O Ubuntu 14.04 não inicializa após a mensagem de erro. / tmp não pôde ser montado

31

Eu instalei recentemente o Ubuntu 14.04 usando o WUBI e após a instalação, quando inicializado, ele mostrou um erro:

Serious errors were found while checking the disk drive for /. 

Havia três opções:

press [I] to ignore, press [S] to skip mounting and press [M] to mount manually. 

Depois que eu pressionei I, ele mostrou /tmpque não podia ser montado e meu Ubuntu não está inicializando.

  • Alguém pode me orientar sobre como resolver esse problema?
user272877
fonte
@pandya eu vi aleeady o link, mas as respostas não parecem me ajudar a resolver o problema #
315777
Gostaria de instalar via wubi porque, em seguida, posso remover o ubuntu sempre que quiser, sem nenhum problema. Você pode, por favor, me orientar sobre como resolver este problema
user272877
Eu usei o acima e funciona muito bem. No entanto, quando tento editar a entrada de inicialização do GRUB2; ele voltará ao original (mesmo depois de salvá-lo). Eu usei o comando: sudo gedit /etc/grub.d/10_lupin Consegui editá-lo e salvá-lo (alterado ro para rw). Mas após a reinicialização, ele volta à entrada de inicialização original. Como posso torná-lo permanente? Muito obrigado,
vaca sagrada, por que isso está acontecendo?
Dirk

Respostas:

43
  1. No Windows Boot Manager, selecione Ubuntu.
  2. Pressione qualquer tecla e entre no menu GNU Grub2.
  3. Você pode pressionar "e" para editar a entrada de inicialização do GRUB2.

Você precisa alterar a entrada de inicialização do GRUB2 de "ro" para "rw",

por exemplo

linux   /boot/vmlinuz-3.13.0-24-generic root=UUID=AAC884AC1F144321 loop=/ubuntu/disks/root.disk ro   quiet splash $vt_handoff

para

linux   /boot/vmlinuz-3.13.0-24-generic root=UUID=AAC884AC1F144321 loop=/ubuntu/disks/root.disk rw   quiet splash $vt_handoff

Pressione F10, você pode inicializar no Ubuntu 14.04.

e você pode corrigir a entrada de inicialização do GRUB2:

sudo vi /etc/grub.d/10_lupin

Mude a linha:

linux   ${rel_dirname}/${basename} root=${LINUX_HOST_DEVICE} loop=${loop_file_relative} ro ${args}

para:

linux   ${rel_dirname}/${basename} root=${LINUX_HOST_DEVICE} loop=${loop_file_relative} rw ${args}

Regenere a entrada de inicialização do GRUB2:

sudo update-grub
user273948
fonte
Ok obrigado por ajudar, mas última pergunta como posso mudar o arquivo grub sem inicializar no Ubuntu, porque eu não posso arrancar no meu ubuntu
user272877
1. no gerenciador de inicialização do Windows, selecione Ubuntu. 2. pressione qualquer tecla e vá no menu GUN Grub2. 3. você pode pressionar "e" para editar os comandos antes de inicializar.
usar o seguinte comando
Depois de selecionar "Ubuntu" no gerenciador de inicialização do Windows, mantenha a tecla Shift pressionada e o menu Grub deve aparecer.
Gfour
Muito obrigado meu ubuntu finalmente inicializou! Obrigado a todos
user272877
Corrijo o problema com esta resposta, mas agora, quando reinicio ou desligo o computador, após selecionar o ubuntu nas opções de inicialização, a tela fica preta e nunca é iniciada. Eu reinicio manualmente e, em seguida, seleciono o ubuntu nas opções de inicialização, no menu pressione e e depois F10 e ele carrega bem, sempre tenho que pressionar e -> F10 para poder carregar o ubuntu. Alguma sugestão?
Duver 5/05
6

A correção temporária - substituir a montagem inicial do root.disk para rw(leitura / gravação) em vez de ro(somente leitura) é boa. É a única maneira de inicializar o Wubi após a instalação (ou atualização) do 14.04.

No entanto, há uma correção melhor a longo prazo do que modificar permanentemente a montagem para leitura / gravação. É melhor modificar a maneira como o dispositivo de loop é criado para permitir a remontagem como leitura / gravação. Isso permitirá que você use o modo de recuperação.

Modifique o arquivo /usr/share/initramfs-tools/script/localcomo mostrado (uma linha removida, três adicionadas):

--- /home/bcbc/local   2014-11-19 20:25:12.274837304 -0800
+++ /usr/share/initramfs-tools/scripts/local   2014-11-19 20:28:37.990832807 -0800
@@ -143,7 +143,9 @@
        modprobe ${FSTYPE}

        # FIXME This has no error checking
-       mount ${roflag} -o loop -t ${FSTYPE} ${LOOPFLAGS} "/host/${LOOP#/}" ${rootmnt}
+       loopdev=`losetup -f`
+       losetup ${loopdev} "/host/${LOOP#/}"
+       mount ${roflag} -t ${FSTYPE} ${LOOPFLAGS} ${loopdev} ${rootmnt}        

        if [ -d ${rootmnt}/host ]; then
            mount -o move /host ${rootmnt}/host

Após fazer a alteração, atualize o ramdisk inicial:

sudo update-initramfs -u

Para obter informações adicionais e crédito pela correção, consulte: https://code.launchpad.net/~noorez-kassam/ubuntu/utopic/initramfs-tools/fix-for-1317437/+merge/219927

Cuidado : obviamente, se você digitar alguns erros ao aplicar essa correção, poderá impedir a inicialização da instalação. Portanto, prossiga com cuidado. E se não tiver certeza, use a substituição mais fácil do Grub. Certifique-se de usar o `quote, not 'para a loopdev=linha.

Se você tentar isso e tiver problemas, há algumas coisas que você pode tentar:

  1. Se você possui mais de um kernel, acesse o menu Recuperação e selecione um kernel mais antigo (com seu próprio initramfs).
  2. Você pode fazer backup do initramfs( antes da atualização ) e copiá-lo sobre o ruim de um DVD / USB ao vivo.
  3. Você pode reconstruir o arquivo initramfsem um arquivo chroot, mas isso é um pouco complicado.

Se for uma instalação nova, a reinstalação é a melhor opção.

bcbc
fonte
Como você, estou tentando encontrar uma solução melhor a longo prazo para esse problema. Tentei o seu método e acabou recebendo muitos erros na reinicialização, alguns dos quais indicavam arquivos ausentes como / etc / fstab. Pode ser que eu tenha cometido um erro de digitação, no entanto, é possível que o 'losetup' esteja encontrando um primeiro dispositivo de loop não utilizado diferente do esperado? Eu deveria estar usando / dev / loop0? No momento, apliquei a substituição mais fácil do Grub.
Bill
@ Bill Acho que há um erro de digitação. Se você colar seu código e postar o link, darei uma olhada.
BCBC
Obrigado bcbc, Infelizmente, não consigo colar o código original porque acabei desinstalando e reinstalando o wubi. O que farei, no entanto, é colar o código atual que pretendo usar para recriar o initramfs. Aqui está o link: pastebin.com/bRKc9fdL
Bill
@ Bill que parece bom.
BCBC
3
Para citar Atos 8: 8 - Havia muita alegria naquela cidade ... assim como na casa de Tourloupis naquela noite ...! Obrigado pela sua ajuda bcbc. Resolveu o meu problema. Afinal, deve ter sido um erro de digitação! Lembre-se, eu tive que copiar e colar essa parte do código na cópia mais recente de / usr / share / initramfs-tools / script / local, pois ela foi modificada desde que eu publiquei meu comentário original. Caso contrário, funcionou como um encanto! Ou seja, depois que eu alterei a linha afetada do /etc/grub.d/10_lupin de volta para somente leitura. Mais uma vez, obrigado pela sua ajuda!
Bill