Deu a espera do dispositivo root 14.04

2

Existem muitas respostas e tutoriais para corrigir isso, mas não pude aplicar nenhuma das soluções no meu caso.

Aqui está minha situação:

  • Eu tenho o Ubuntu 12.04 funcionando perfeitamente
  • Eu instalei o Ubuntu 14.04
  • o erro ocorreu quando estou tentando inicializar o 14.04 (o 12.04 está funcionando bem)

Eu tenho usb stick com 14.04 e trabalhando 12.04 para poder aplicar correções ou depurar ainda mais.

A execução de sudo grub-update me dá:

> Generating grub.cfg ... Found linux image:
> /boot/vmlinuz-3.5.0-52-generic Found initrd image:
> /boot/initrd.img-3.5.0-52-generic Found linux image:
> /boot/vmlinuz-3.5.0-46-generic Found initrd image:
> /boot/initrd.img-3.5.0-46-generic Found linux image:
> /boot/vmlinuz-3.5.0-45-generic Found initrd image:
> /boot/initrd.img-3.5.0-45-generic Found linux image:
> /boot/vmlinuz-3.5.0-23-generic Found initrd image:
> /boot/initrd.img-3.5.0-23-generic Found memtest86+ image:
> /boot/memtest86+.bin Found Ubuntu 14.04 LTS (14.04) on /dev/sda6 
> done

Uma das soluções que tentei foi pressionar e no grub menu e substituir o ID por /dev/sda6 , mas nada mudou.

O que está causando o problema e há uma maneira fácil de corrigir o grub usando o 12.04?

    set root='(hd0,msdos1)'
    search --no-floppy --fs-uuid --set=root 0970394e-13f2-47c9-979e-c93cb6eef06d
    linux   /boot/vmlinuz-3.5.0-52-generic root=UUID=0970394e-13f2-47c9-979e-c93cb6eef06d ro   quiet splash $vt_handoff
    initrd  /boot/initrd.img-3.5.0-52-generic
}
--
    search --no-floppy --fs-uuid --set=root 0970394e-13f2-47c9-979e-c93cb6eef06d
    echo    'Loading Linux 3.5.0-52-generic ...'
    linux   /boot/vmlinuz-3.5.0-52-generic root=UUID=0970394e-13f2-47c9-979e-c93cb6eef06d ro recovery nomodeset 
    echo    'Loading initial ramdisk ...'
    initrd  /boot/initrd.img-3.5.0-52-generic
--
    set root='(hd0,msdos1)'
    search --no-floppy --fs-uuid --set=root 0970394e-13f2-47c9-979e-c93cb6eef06d
    linux   /boot/vmlinuz-3.5.0-46-generic root=UUID=0970394e-13f2-47c9-979e-c93cb6eef06d ro   quiet splash $vt_handoff
    initrd  /boot/initrd.img-3.5.0-46-generic
}
--
    search --no-floppy --fs-uuid --set=root 0970394e-13f2-47c9-979e-c93cb6eef06d
    echo    'Loading Linux 3.5.0-46-generic ...'
    linux   /boot/vmlinuz-3.5.0-46-generic root=UUID=0970394e-13f2-47c9-979e-c93cb6eef06d ro recovery nomodeset 
    echo    'Loading initial ramdisk ...'
    initrd  /boot/initrd.img-3.5.0-46-generic
--
    set root='(hd0,msdos1)'
    search --no-floppy --fs-uuid --set=root 0970394e-13f2-47c9-979e-c93cb6eef06d
    linux   /boot/vmlinuz-3.5.0-45-generic root=UUID=0970394e-13f2-47c9-979e-c93cb6eef06d ro   quiet splash $vt_handoff
    initrd  /boot/initrd.img-3.5.0-45-generic
}
--
    search --no-floppy --fs-uuid --set=root 0970394e-13f2-47c9-979e-c93cb6eef06d
    echo    'Loading Linux 3.5.0-45-generic ...'
    linux   /boot/vmlinuz-3.5.0-45-generic root=UUID=0970394e-13f2-47c9-979e-c93cb6eef06d ro recovery nomodeset 
    echo    'Loading initial ramdisk ...'
    initrd  /boot/initrd.img-3.5.0-45-generic
--
    set root='(hd0,msdos1)'
    search --no-floppy --fs-uuid --set=root 0970394e-13f2-47c9-979e-c93cb6eef06d
    linux   /boot/vmlinuz-3.5.0-23-generic root=UUID=0970394e-13f2-47c9-979e-c93cb6eef06d ro   quiet splash $vt_handoff
    initrd  /boot/initrd.img-3.5.0-23-generic
}
--
    search --no-floppy --fs-uuid --set=root 0970394e-13f2-47c9-979e-c93cb6eef06d
    echo    'Loading Linux 3.5.0-23-generic ...'
    linux   /boot/vmlinuz-3.5.0-23-generic root=UUID=0970394e-13f2-47c9-979e-c93cb6eef06d ro recovery nomodeset 
    echo    'Loading initial ramdisk ...'
    initrd  /boot/initrd.img-3.5.0-23-generic
--
    set root='(hd0,msdos6)'
    search --no-floppy --fs-uuid --set=root ee707b14-31a7-4f86-a6e5-1b9aa38bdd68
    linux /boot/vmlinuz-3.13.0-30-generic root=UUID=ee707b14-31a7-4f86-a6e5-1b9aa38bdd68 ro nomodeset quiet splash $vt_handoff
    initrd /boot/initrd.img-3.13.0-30-generic
}
--
    set root='(hd0,msdos6)'
    search --no-floppy --fs-uuid --set=root ee707b14-31a7-4f86-a6e5-1b9aa38bdd68
    linux /boot/vmlinuz-3.13.0-30-generic root=UUID=ee707b14-31a7-4f86-a6e5-1b9aa38bdd68 ro nomodeset quiet splash $vt_handoff
    initrd /boot/initrd.img-3.13.0-30-generic
}
--
    set root='(hd0,msdos6)'
    search --no-floppy --fs-uuid --set=root ee707b14-31a7-4f86-a6e5-1b9aa38bdd68
    linux /boot/vmlinuz-3.13.0-30-generic root=UUID=ee707b14-31a7-4f86-a6e5-1b9aa38bdd68 ro recovery nomodeset nomodeset
    initrd /boot/initrd.img-3.13.0-30-generic
}
--
    set root='(hd0,msdos6)'
    search --no-floppy --fs-uuid --set=root ee707b14-31a7-4f86-a6e5-1b9aa38bdd68
    linux /boot/vmlinuz-3.13.0-24-generic root=UUID=ee707b14-31a7-4f86-a6e5-1b9aa38bdd68 ro nomodeset quiet splash $vt_handoff
    initrd /boot/initrd.img-3.13.0-24-generic
}
--
    set root='(hd0,msdos6)'
    search --no-floppy --fs-uuid --set=root ee707b14-31a7-4f86-a6e5-1b9aa38bdd68
    linux /boot/vmlinuz-3.13.0-24-generic root=UUID=ee707b14-31a7-4f86-a6e5-1b9aa38bdd68 ro recovery nomodeset nomodeset
    initrd /boot/initrd.img-3.13.0-24-generic
}
    
por gotqn 15.07.2014 / 22:46

2 respostas

4

Duas causas possíveis para o erro acima são (supondo que a instalação não esteja completamente interrompida):

a) O Grub não está carregando a raiz correta para o boot de 14.04

b) A entrada para root no fstab da instalação 14.04 e / ou initrd está quebrada.

Dados os comentários em questão, parece improvável que a) seja a causa. Razão é que substituindo com root = / dev / sda6 no grub não ajudou. As entradas do 12.04 grub parecem corretas, mas é provável que a instalação atual do grub seja atualmente a partir de 14.04 (pode ser verificada a partir das entradas mostradas na página de boot grub seria de 14.04 e 12.04 estará na tela alternativa). Portanto, substituir com 12,04 grub pode ser tentado em primeiro lugar, como mencionado, é provável que não seja o problema. Do trabalho 12.04 ambiente:

sudo grub-install /dev/sda

Confirme se o grub tem algum timeout configurado para ativar a seleção de uma opção: sudo gedit /etc/default/grub , GRUB_HIDDEN_TIMEOUT e GRUB_TIMEOUT devem ser diferentes de zero 10 (por 10 segundos) e, em seguida, executar sudo update-grub . A reinicialização agora mostrará 12.04 na tela de boot frontal, enquanto 14.04 estará na tela alternativa. Se o 14.04 funcionar agora, estamos prontos e podemos apenas instalar o grub do 14.04 executando sudo grub-install /dev/sda do ambiente 14.04. Caso contrário, tentaremos consertar b) como mencionado a seguir.

Existem duas maneiras de fazer b). Uma é inicializar a partir do live CD, montar a instalação existente e depois consertá-la. Outro é corrigir a partir da instalação 12.04 de trabalho. Eu irei elaborar o segundo, embora a primeira opção seja bem parecida, com a única diferença sendo a inicialização no live CD em vez da instalação 12.04 existente.

Após a inicialização em 12.04, primeiro descarte o shell do root para evitar invocações sudo repetidas: sudo -i .

Agora vamos montar a instalação 14.04 em algum lugar (digamos, /mnt/trusty ) e chroot nela, o que fará com que o 14.04 seja instalado como a nova raiz desse shell (e efetivamente torne o shell como 14.04). Nos velhos tempos do Linux, isso era suficiente para operar em um ambiente 14.04 a partir de um shell, mas em novos kernels a maioria dos arquivos de dispositivos em /dev se tornaram dinâmicos e substituídos pelo daemon udev , então requer a criação manual de muitas coisas primeiro. No entanto, para os nossos propósitos de consertar o fstab / initrd, ele deve estar bem como está. Ainda assim, teremos que fazer algumas coisas para evitar avisos / erros - copie o mtab atual e monte o proc.

mkdir /mnt/trusty
mount /dev/sda6 /mnt/trusty
cp /etc/mtab /mnt/trusty/etc/mtab

Neste ponto, estamos prontos para verificar e corrigir o fstab, antes de chroot ing e, em seguida, gerar novamente a imagem initrd do kernel 14.04. Portanto, abra-o: gedit /mnt/trusty/etc/fstab e verifique se a primeira linha não comentada tem o UUID correto para o ponto de montagem da raiz (/). Neste caso, vimos que o UUID da raiz do /4 / dev / sda6 do 14.04 é ee707b14-31a7-4f86-a6e5-1b9aa38bdd68 , portanto, verifique se fstab também diz o mesmo que corrija o UUID, salve fstab e feche. Agora podemos regenerar o initrd:

chroot /mnt/trusty
mount -t proc proc /proc
update-initramfs -k all -c

Isso deve terminar sem erros. Então desmonte / proc, saia de chroot environment e desmonte 14.04:

umount /proc
exit
umount /mnt/trusty

Agora reinicie e tente iniciar o 14.04. Se agora começar bem, substitua pelo grub 14.04 como mencionado anteriormente: sudo grub-install /dev/sda do ambiente 14.04. Também será uma boa ideia regenerar o initrd a partir do ambiente 14.04, para o caso de o ambiente chroot ter algumas diferenças: sudo update-initramfs -k all -c .

    
por sumwale 19.07.2014 / 00:32
1

Recebi a mesma mensagem de erro e nada ajudou. No meu caso, o erro acabou por corromper o sistema de arquivos. Estava falhando ao ler do disco.

Eu corri o problema executando fsck nas minhas unidades linux (/ dev / sdaN) com a opção -f . Dessa forma, forcei o fsck a verificar a unidade em busca de erros (e não apenas ler o sinalizador da última verificação) e corrigiu manualmente os erros encontrados.

Quando os erros foram corrigidos, meu sistema voltou a ficar on-line após a reinicialização. Espero que isso ajude.

    
por Projjwal 06.12.2015 / 13:55