Erro ao iniciar Ubuntu pelo HD Externo

Iniciado por akaikust, 03 de Maio de 2013, 16:01

tópico anterior - próximo tópico

akaikust

Boa tarde !

Eu tenho em meu notebook o Ubuntu 12.04 instalado sem erros. Onde estudo há um laboratório de informática, sendo que o sistema é Windows ( cheio de vírus ). Então resolvi clonar o Ubuntu do meu note e por no meu HD Externo.

Até então tudo bem, utilizei os comandos :

dd if=/dev/sda3 | gzip > /media/Pessoal_/SystemImages/PortableImageBackup/PortableImageBackup.img.gz

gzip -d -c /media/Pessoal_/SystemImages/PortableImageBackup/PortableImageBackup.img.gz | dd of=/dev/sdb2

sudo mount /dev/sdb2 /mnt && sudo grub-install --root-directory=/mnt /dev/sdb

Onde :

"SDA3" é a partição onde o sistema se encontra no note;

"/media/Pessoal_/SystemImages/PortableImageBackup" é o local onde gravei a imagem;

"PortableImageBackup.img.gz" é o nome da imagem;

"SDB2" É a partição reservada para o Ubuntu em meu HD Externo;

"sudo mount /dev/sdb2 /mnt && sudo grub-install --root-directory=/mnt /dev/sdb" serviu para instalar o GRUB.

Feito tudo isso, testei meu sistema portátil em meu desktop e funcionou sem problemas, no trabalho a mesma coisa e na faculdade, onde é o objetivo também. Sendo que recentemente migramos para outro laboratório, onde os micros, apesar de novos, são de outra fabricante ( positivo ).

Nesses últimos, ao bootar meu HD Externo, retorna a mensagem : " Unknown file system grub rescue "

Detalhes : O processador do meu note é um i3, os da faculdade eram i5, sendo que esses do outro laboratório são Core2Duo, já verifiquei o SETUP do micro e apontei para bootar com o HD Externo, até porque, senão fizesse isso, nem a mensagem de erro teria aparecido. Eu tenho o Ubuntu no PENDRIVE ( Live CD ) e funciona normalmente.

Desde já agradeço !

Teeckot

#1
1- Você, já tentou ver se não corrompeu a instalação do hd externo? ele ainda funciona nas máquinas que funcionavam antes?

2- Algumas placas, senão todas hoje em dia, tem uma opção de apertar uma tecla de função F12, F11, F8, algo parecido durante a inicialização para escolher a mídia de boot, ignorando as configurações do setup, veja se não funciona ai.

3- Verifica a ordem dos dispositivos usb no setup, tive alguns problemas com isso, colocava o boot por usb primeiro, mas o dispositivo que vinha na frente era outro, inclusive tenho um note sem hd com lubuntu mini instalado num pendrive, se plugo ele em outra porta usb não funciona.

4- Por último, encontrei um problema semelhante ao testar o ubuntu 13.04 beta na maquina virtual, pensei que a imagem estava corrompida, baixei outras vezes e nada, alterei alguma configuração na máquina relativa as unidades de armazenamento, algo que era bem simples mas não me lembro o que foi, e funcionou.
Então procure nas configurações do dispositivo usb no setup também (cuidado, antes de alterar anote o valor que estava)

Se eu lembrar o que foi que alterei na máquina virtual para funcionar eu retorno aqui.



Teeckot

O sistema que você clonou para o hd externo é de 32 ou 64 bits?

Me parece que foi esse problema que tive com a máquina virtual, a imagem que eu queria instalar não correspondia com a arquitetura da máquina, no caso eu alterei a máquina virtual, no seu caso se for isso você terá que alterar o sistema instalado no hd externo.

Se tiver como, use uma dessas máquinas do laboratório para instalar o ubuntu no hd externo como se ele fosse um hd interno (faça uma imagem dele antes por precaução), cuidado para não apontar para o hd da máquina, e veja se o sistema inicia a partir do hd externo.

akaikust

Obrigado pelas respostas !

1 - O HD Externo ainda funciona nas máquinas onde funcionavam antes ;

2 - Não me atentei a essas opções de inicialização de boot pelas teclas "FX", irei verificar;

3 - Quanto a ordem, deixei apenas o HD Externo para bootar, desabilitando as demais ordens.

O sistema clonado é de 32 Bits.

Instalar o Ubuntu no HD Externo era exatamente o que eu não pretendia fazer, pois não teria tempo para deixá-lo como gostaria. Mas instalarei para postar o resultado. A imagem eu já tenho, que é do sistema do meu note.


Teeckot

Se nao quiser instalar no hd externo, pode ser em um pendrive mesmo, so para testar, porem se for usar muito este pendrive com o sistema instalado, nao deixa a instalacao criar a particao swap, pois isso pode diminuir a vida do pendrive, agora se for so pra testar mesmo nao faz muita diferenca.

(escrevi sem acentos pois estou em um note com o teclado desconfigurado)

akaikust

Irei instalá-lo no HD Externo mesmo, levo nem 10 minutos para restaurar a imagem dele.

Farei o procedimento segunda-feira e postarei o resultado.

Obrigado.

irtigor

Faltou cuidado com a mbr, pra partição ser "bootável". Com o clonezilla seria bem mais fácil.

akaikust

Citação de: irtigor online 05 de Maio de 2013, 11:03
Faltou cuidado com a mbr, pra partição ser "bootável". Com o clonezilla seria bem mais fácil.

Realmente é mais fácil, sendo que a imagem é do meu note ( sda3 ), quando ponho no HD Externo ( sdb2 ), não funciona.

Para fazer funcionar, preciso alterar o nome do arquivo de imagem compactado :

Exemplo :

" sda3.ext4-ptcl-img.gz.a " para " sdb2.ext4-ptcl-img.gz.a "

e alterar o parâmetro do arquivo " parts " para " sdb2 ".

akaikust

Prezados, boa tarde !

Fiz a instalação limpa em um dos micros em que meu sistema não funcionava, o resultado foi o mesmo. ( " Unknown file system grub rescue " )

Testei em uma das máquinas onde meu sistema funcionava antes e bootou normalmente.

Teeckot

#9
Acho que já vi uma explicação para isso, se não estiver falando besteira, o grub durante a instalação é gravado fazendo referência a partição com uma numeração própria (hd0 seria sda, hd1 - sdb, assim por diante) creio que enquanto você instala ele mapeia seu hd com uma numeração, contando com o cd-rom, ao reiniciar a placa mãe altera essa ordem por isso o grub não consegue encontrar a partição para dar o boot.

Veja, a bios carrega o grub, o problema é que o grub não está encontrando a partição com os arquivos para inicializar.

experimenta esta dica para reescrever o grub no hd:
http://www.hardware.com.br/tutoriais/ubuntu-entendendo-configurando-grub2/dicas-recuperacao-solucao-problemas.html
(cuidado para não escrever o grub no hd interno da máquina)

se não der certo eu sei que tem um comando em terminal onde se entra em uma espécie de console do grub, lá é possível ver as partições e setar onde instalar o grub, vou procurar essa dica e retorno aqui.

*** parece que a dica em questão era para o grub legacy (o antigo), para o grub2 as opções são no terminal mesmo, mas encontrei várias dicas de recuperação do grub2 aqui: http://ubuntuforum-br.org/?topic=14614.0 
uma opção que achei interessante é a mesma usada no link do guia do hardware, porém especificando a uuid do dispositivo que pode ser obtida com o comando blkid. ******

akaikust

Boa tarde Teeckot  ! Dei uma olhada nos dois links mencionados acima, o primeiro eu já utilizo e já havia testado.

Quanto as dicas do segundo link, utilizei todas até a parte da instalação pelo " UUID ", porém não obtive sucesso.

A BIOS desses micros não possuem Função no teclado para boot, é preciso configurá-las na BIOS.

Na BIOS, fiz como você mencionou, no meu notebook, a sequência de boot é a seguinte :

DVD - Dispositivos USB - HD

Deixei da mesma forma e ainda retorna a mesma mensagem de erro.

Comecei a baixar o Alternate CD aqui no laboratório, mas não pude terminar o download, ao chegar em casa baixarei e amanhã testarei aqui.

Seria interessante reparar o grub na mesma tela onde aparece a mensagem de erro, é muito curioso o HD Externo bootar em algumas máquinas e em outras não...

Em casa eu só tenho um HD no notebook ( a informação parece besta, mas prefiro mencionar ), aqui na faculdade também é dessa forma e nos micros onde utilizo o HD Externo também.

Cheguei a alterar alguns parâmetros no grub.cfg na parte onde supostamente indica a partição onde se encontra a boot : " root=(hd0,msdos3) " ( SDA3 ) para " root=(hd1,msdos2) " ( SDB2 ), mesmo assim, a mesma mensagem é retornada.

Por enquanto é isso, como mencionei, testarei o Alternate CD e amanhã postarei o resultado.

Obrigado !


selvaking

#11
Velhinho!

Digamos que vc fez seu backup do SO em 4 passos:
1º passo
dd if=/dev/sda3 | gzip > /media/Pessoal_/SystemImages/PortableImageBackup/PortableImageBackup.img.gz

2º passo
gzip -d -c /media/Pessoal_/SystemImages/PortableImageBackup/PortableImageBackup.img.gz | dd of=/dev/sdb2

3º e 4º passo juntos

sudo mount /dev/sdb2 /mnt && sudo grub-install --root-directory=/mnt /dev/sdb
3º passo => sudo mount /dev/sdb2 /mnt
4º passo => sudo grub-install --root-directory=/mnt /dev/sdb


Ficou faltando algo entre o 3º e 4º passo para que o 4º passo funcionasse perfeitamente.
Faltou editar o arquivo /etc/fstab modificando a UUID pra UUID da nova partição.
Faltou gerar um novo arquivo /boot/grub/grub.cfg rodando o comando update-grub.
Só após isto rodar o comando de instalação do grub. (4º passo)

COmo isto foi deixado de fazer vc pode:

Usar um Live-CD e após verificar qual o seu HD externo montar o mesmo.
Digamos que ele seja o /dev/sdb2
monte o HD
sudo mount /dev/sdb2 /mnt

Monte as partições de sistema nele:

sudo mount --bind /dev /mnt/dev
sudo mount --bind /sys /mnt/sys
sudo mount --bind /proc /mnt/proc


Use o comando chroot para usar a distro da partição montada.
sudo chroot /mnt su - root

Use o comando blkid para verificar o uuid da partição, anote.
blkid

Use um editor de texto para editar o UUID da partição. Após editar, salve.
nano /etc/fstab

Rode o comando update-grub
update-grub

Só após instale o grub no dispositivo que vc verificou que era seu HD externo. Usamos /dev/sdb como exemplo, pois a partição utilizada era neste dispositivo.
grub-install /dev/sdb

Após isto, saia do chroot, desmonte os dispositivos montados e reinicie seu computador.
Dê-me um computador com o Tux que movo o mundo!

Linux User #323049

akaikust

Prezados, boa noite !

selvaking, obrigado pelas dicas, será de grande utilidade ! Estou baixando o Alternate CD como havia mencionado, mas antes farei o procedimento sugerido por ti !

Ainda não havia encontrado nada parecido com o que você mencionou.

Quanto a UUID, será a mesma pois fiz uma clonagem com o comando DD. ( Já verifiquei )

Sendo que no fstab está assim :

# /etc/fstab: static file system information.
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>

proc   /proc   proc   nodev,noexec,nosuid   0   0
#Entry for /dev/sda3 :
UUID=ea29f232-3d7d-46b2-94d8-0c462c18dccd   /   ext4   errors=remount-ro   0   1


Eu alterarei a linha " #Entry for /dev/sda3 : " para " #Entry for /dev/sdb2 : " e darei prosseguimento.

Bom, amanhã testarei, mais uma vez obrigado a comunidade.

Boa noite !

selvaking

O DD não é muito aconselhável para este tipo de clonagem, pois ele tenta manter as informações de cilindro, cabeças e setores que pode ser maior ou menor, podendo sobrar ou faltar espaço.

Eu se fosse vc aprenderia a usar o "cp -rap"

vc montaria o 1º dispositivo que chamaremos de ORIGEM

Depois montaria o 2º dispositivo que chamaremos de DESTINO

e copiaria os arquivos com o atributo -rap da ORIGEM pro DESTINO.

Depois, usando a técnica chroot, modificaria o conteúdo do fstab, geraria um novo boot.cfg e instalaria o grub.

A partição entraria de primeira. Rachando.

Faço sempre isto quando quero fazer um backup funcional de um servidor/desktop para uma máquina virtual e/ou outro servidor/desktop, ou um arquivão .tgz.

Não existe fórmulas genéricas, as fórmulas devem ser personalizadas de acordo com as máquinas.

Eu usaria o DD se fosse pra clonar hd's de mesmo tamanho com mesmo número de cilindro, cabeças e setores.

A partição /dev/sdb2 está ativa?

Coloca a saida do comando:

sudo fdisk -l /dev/sdb
Dê-me um computador com o Tux que movo o mundo!

Linux User #323049

Teeckot

Se as dicas do selvaking não funcionarem, só lhe restaria levar seu hd para benzer ;D

ou usar a ferramenta de criar discos inicializaveis do ubuntu e torná-lo um live-hd, com espaço reservado para armazenar seus arquivos, mas com certeza vai funcionar, segue certinho a ordem das coisas, acho que nem precisa baixar o alternate cd, a menos que queira ter como uma ferramenta para uso futuro.

E selvaking, virei seu fã, quando crescer quero ser igual a você!  ;D