ALERTA! / dev / disk / by-uuid / xxxxxxxxx não existe. Cair em uma concha

26

Estou usando o Ubuntu 14.04.

Eu corri no terminal sudo apt-get update. Então eu reiniciei o sistema. E agora eu vejo:

ALERT! /dev/disk/by-uuid/xxxxxxxxx does not exist. Dropping to a shell
initramfs:_

Não consigo inicializar o LIVE Ubuntu a partir da unidade flash USB. Sim, verifiquei a configuração do BIOS e a unidade flash USB está OK e é executada em outra máquina. No momento, vou comprar um DVD e gravar um Live DVD de outro laptop.

sudo blkid me dá:

/dev/loop0: TYPE="squashfs"  
/dev/sda1: UUID="xxxx" TYPE="ext4"   
/dev/sr0: LABEL="Ubuntu 14.04.1 LTS i386" TYPE="iso960"   

/etc/fstabtem o mesmo UUID="xxxx"e existe uma linha com:

errors=remount-ro 0   

Tentei usar o reparo de inicialização, mas ainda não consigo fazer login no Ubuntu.

Não quero reinstalar o Ubuntu, porque tenho muitos dados lá.

Você tem algum conselho de como isso pode ser resolvido?

Marcin Gorski
fonte
1
Execute a sudo blkidpartir do terminal (a partir de um DVD ao vivo, se necessário) e verifique os UUIDs contra o que /etc/fstabpossui. Ou publique os dois resultados em sua pergunta, por favor. Como executar a sudo blkidpartir de um DVD ao vivo: Inicialize a partir do disco ao vivo do Ubuntu, clique na opção Experimentar o Ubuntu na inicialização. Abra o terminal (Ctrl + Alt + T) e execute o sudo blkidcomando nele. Por fim, publique sua saída na sua pergunta.
22414
1
ok @karel sudo blkidme dá /dev/loop0: TYPE="squashfs" /dev/sda1: UUID="xxxx" TYPE="ext4" dev/sr0: LABEL="Ubuntu 14.04.1 LTS i386" TYPE="iso960" / etc / fstab têm o mesmo UUID = "xxxx" e não há linha onde os erros são escritos = remount-ro 0 -
Marcin Gorski
1
Eu tenho isso depois de executar o boot- repair Log de
Marcin Gorski
e, em seguida, ainda eu não posso fazer login para ubuntu ...
Marcin Gorski
3
@ MarcinGorski, adicione sua solução como resposta e marque-a como aceita em vez de editar a pergunta.
Muru

Respostas:

25

A solução foi executar esses comandos do liveDVD, ele me permite fazer coisas no meu sda1 a partir desse liveDVD (até onde eu entendi)

sudo mount /dev/sda1 /mnt
sudo mount --bind /dev /mnt/dev
sudo mount --bind /proc /mnt/proc
sudo mount --bind /sys /mnt/sys
sudo chroot /mnt
update-initramfs -u
update-grub
reboot

Um amigo meu do fórum ubuntu pl me ajudou a resolver esse problema.

Ele descobriu que pode haver um erro no initramfs, que deve ser atualizado como parte da atualização do kernel. Se algo der errado durante essa atualização, problemas como o meu podem acontecer.

Marcin Gorski
fonte
4
Bom post. Gostaria de acrescentar que o Ubuntu não está necessariamente instalado sda1. Para ajudar a determinar onde está instalado, execute sudo fdisk -l. Supondo que você saiba para qual disco rígido você instalou o Ubuntu, esse comando deve ajudá-lo a determinar quais sd * mapeiam para essa unidade.
Ubiquibacon
Tentei fazer isso no Ubuntu 17.04 MATE (Nova Instalação), e isso não ajuda, infelizmente ...
Dominic Hayes
1
Eu estava recebendo WARNING: missing /lib/modules/4.2.0-16-genericporque o LiveCD tinha uma versão diferente do kernel. Então, eu tenho montado tmp, libe lib64em seguida, tudo funcionou.
Max Malysh
Eu tive que especificar o sistema de arquivos para montar em uma partição ext4 ( mount -t ext4 /dev/sda1 /mnt), caso contrário, isso funcionou muito bem.
Shane
-2

As pessoas podem desaprovar isso, se quiserem, mas eu descobri que usar " /dev/sdX" funciona de maneira mais confiável para mim do que o UUID para meus sistemas pessoais. Em um ambiente corporativo, eu me esforçaria mais para fazê-lo funcionar com o UUID em vez do endereço "/ dev /", mas você deve estar seguro usando a referência UUID /dev/sdaXem /etc/fstabvez da referência UUID, pelo menos para poder inicializar seu sistema enquanto você continue procurando a resposta do motivo pelo qual exatamente a inicialização está falhando, apesar de ter o UUID correto em / etc / fstab.

Se você deseja seguir esta rota, use o seguinte procedimento:

  1. Inicialize no shell de recuperação ou em uma unidade USB ou CD ao vivo

  2. Monte sua partição do sistema que está falhando ao inicializar

  3. Edite o /etc/fstabarquivo na partição do sistema mencionada na Etapa 2 como raiz e substitua UUID=XXXXXpelo /dev/sdXrótulo correspondente em todas as /etc/fstabentradas relevantes .

Nota: Este procedimento é conhecido por ser confiável para distribuições derivadas do Ubuntu e do Ubuntu (na redação deste artigo; isso pode ser facilmente alterado em qualquer versão futura). Sei que, de fato, ele não funcionará de maneira confiável para outras distribuições, como o knoppix ou o Arch Linux (isso ocorre devido a diferenças na maneira como o UDEV varre nos dispositivos e os nomeia no sistema de arquivos / dev). Se você estiver usando uma distribuição não derivada do Ubuntu, não use este método ou use-o por sua conta e risco.

MGodby
fonte
Obrigado pela sua ajuda @MGodby, mas eu já acho solução.
Marcin Gorski
4
Seu método é o antigo, que foi substituído por boas razões, principalmente porque a numeração da unidade não é constante e é possível inicializar a partir de uma unidade inesperada. Isso não é possível com o UUID. Mas costumo usar o formato "LABEL = ___", apenas porque é mais claro ver imediatamente o que é o quê. Exemplo: LABEL=data_partition.
Marty Fried