ALARM! / dev / disk / by-uuid / xxxxxxxxx nie istnieje. Upuszczanie do muszli

28

Używam Ubuntu 14.04.

Pobiegłem w terminalu sudo apt-get update. Następnie ponownie uruchomiłem system. A teraz widzę:

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

Nie mogę uruchomić LIVE Ubuntu z napędu flash USB. Tak, dwukrotnie sprawdziłem konfigurację systemu BIOS, a pamięć flash USB działa prawidłowo i działa na innym komputerze. Teraz mam zamiar kupić DVD i nagrać Live DVD z innego laptopa.

sudo blkid daje mi:

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

/etc/fstabma to samo UUID="xxxx"i jest linia z:

errors=remount-ro 0   

Próbowałem użyć naprawy rozruchu, ale nadal nie mogę zalogować się do Ubuntu.

Nie chcę ponownie instalować Ubuntu, ponieważ mam tam dużo danych.

Czy masz jakąś radę, jak to rozwiązać?

Marcin Górski
źródło
1
Uruchom sudo blkidz terminala (w razie potrzeby z DVD na żywo) i sprawdź, czy identyfikator UUID jest zgodny z tym, co /etc/fstabma. Lub zamieść oba wyniki w swoim pytaniu. Jak uruchomić sudo blkidz Live DVD: Uruchom z dysku Live Ubuntu, kliknij opcję Uruchom Ubuntu podczas uruchamiania. Otwórz terminal (Ctrl + Alt + T), a następnie uruchom sudo blkidw nim polecenie. Na koniec opublikuj wynik w swoim pytaniu.
karel
1
ok @karel sudo blkiddaje mi /dev/loop0: TYPE="squashfs" /dev/sda1: UUID="xxxx" TYPE="ext4" dev/sr0: LABEL="Ubuntu 14.04.1 LTS i386" TYPE="iso960" / etc / fstab mam ten sam UUID = "xxxx" i jest wiersz, w którym zapisano błędy = remount-ro 0 -
Marcin Gorski
1
Mam to po uruchomieniu boot- repair Log boot-repair
Marcin Gorski
a potem nadal nie mogę się zalogować do Ubuntu ...
Marcin Gorski
3
@MarcinGorski, proszę dodaj swoje rozwiązanie jako odpowiedź i oznacz je jako zaakceptowane zamiast edytować pytanie.
muru

Odpowiedzi:

25

Rozwiązaniem było wykonanie tych poleceń z liveDVD, pozwala mi to robić na moim sda1 z liveDVD (o ile rozumiem)

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

Mój przyjaciel z forum ubuntu pl pomógł mi rozwiązać ten problem.

Odkrył, że może wystąpić błąd w initramfs, który powinien zostać zaktualizowany w ramach aktualizacji jądra. Jeśli coś się nie powiedzie podczas tej aktualizacji, mogą wystąpić problemy takie jak moje.

Marcin Górski
źródło
4
Dobry post Chciałbym dodać, że Ubuntu niekoniecznie jest zainstalowane sda1. Aby ustalić, gdzie jest zainstalowany, uruchom sudo fdisk -l. Zakładając, że wiesz, na jakim dysku twardym zainstalowałeś Ubuntu, to polecenie powinno pomóc ci określić, które sd * odwzorowuje na tym dysku.
ubiquibacon
Próbowałem tego na Ubuntu MATE 17.04 (nowa instalacja) i niestety to nie pomogło ...
Dominic Hayes
1
Byłem coraz WARNING: missing /lib/modules/4.2.0-16-genericponieważ LiveCD miał inną wersję jądra. Tak już zamontowane tmp, liba lib64i wtedy wszystko działało.
Max Malysh
Musiałem określić system plików do zamontowania dla partycji ext4 ( mount -t ext4 /dev/sda1 /mnt), w przeciwnym razie działałoby to świetnie.
Shane
-2

Ludzie mogą się na to krzywić, jeśli chcą, ale odkryłem, że używanie „ /dev/sdX” działa bardziej niezawodnie dla mnie niż UUID w moich systemach osobistych. W środowisku przedsiębiorstwa, chciałbym włożyć więcej wysiłku w to pracę z UUID zamiast „/ dev /” adres, ale powinno być bezpieczne używając /dev/sdaXw /etc/fstabzamiast odniesienia UUID, co najmniej, aby móc uruchomić system podczas kontynuuj poszukiwanie odpowiedzi na pytanie, dlaczego dokładnie nie udaje się uruchomić system, mimo posiadania poprawnego UUID w / etc / fstab.

Jeśli chcesz wybrać tę trasę, skorzystaj z następującej procedury:

  1. Uruchom się w powłoce odzyskiwania lub uruchom na żywo dysk USB lub dysk CD

  2. Zainstaluj partycję systemową, której nie można uruchomić

  3. Edytuj /etc/fstabplik na partycji systemowej wymienionej w kroku 2 jako root i zastąp UUID=XXXXXodpowiednią /dev/sdXetykietą we wszystkich odpowiednich /etc/fstabwpisach.

Uwaga: ta procedura jest dla mnie znana jako niezawodna w przypadku dystrybucji Ubuntu i pochodnych Ubuntu (w chwili pisania tego artykułu; może to łatwo zmienić w każdej nadchodzącej wersji). Wiem na pewno, że nie będzie działać niezawodnie dla niektórych innych dystrybucji, takich jak knoppix lub Arch Linux (wynika to z różnic w sposobie skanowania UDEV w urządzeniach i nadawania im nazw w systemie plików / dev). Jeśli korzystasz z dystrybucji niepochodzącej z systemu Ubuntu, nie używaj tej metody lub używaj jej na własne ryzyko.

MGodby
źródło
Dziękuję za pomoc @MGodby, ale już znalazłem rozwiązanie.
Marcin Gorski
4
Twoja metoda jest starą metodą, która została zastąpiona z całkiem dobrych powodów, głównie dlatego, że numeracja dysków nie jest stała i możliwe jest uruchomienie z nieoczekiwanego dysku. Nie jest to możliwe w przypadku UUID. Ale często używam formatu „LABEL = ___” tylko dlatego, że od razu łatwiej jest zobaczyć, co jest. Przykład: LABEL=data_partition.
Marty Fried