Ich habe die vorhandenen Fragen durchsucht, aber nichts geht auf mein Problem ein.
Mein System mit Ubuntu 14.04 wurde vor ein paar Tagen teilweise aktualisiert. Seitdem lässt sich mein System nicht mehr starten. Es friert auf dem violetten Bildschirm ein. (Plymouth?) Wenn ich versuche, das System zur Wiederherstellung zu starten, erhalte ich die Fehlermeldung „Ich habe das Warten auf Root aufgegeben“ sowie zahlreiche libkmod-Fehler.
Ich habe von einer Live-CD gebootet und einige Fehlerbehebungsversuche unternommen. Ich kann die Root-Partition von dort mounten und chrooten. Ich habe /var/log/boot überprüft und zwei kleine Fehler gefunden – Samba und Ksplice – nichts, was das Booten verhindern sollte. Ich habe versucht, Grub mit Folgendem neu zu installieren, nachdem ich die Boot-Partition in /boot gemountet hatte:
sudo grub-install --efi-directory=/boot /dev/sdc
Leider führt dies zu denselben Libkmod-Fehlern, die auftreten, wenn ich versuche, eine Wiederherstellung durchzuführen. (Ich habe ein EFI, kein BIOS)
So endet die Wiederherstellung:
Gave up waiting for root device. Common problems:
- Boot args (cat /proc/cmdline)
- Check rootdelay= (did the system wait long enough?)
- Check root= (did the system wait for the right device?)
- Missing modules (cat /proc/modules; Is /dev)
ALERT! /dev/mapper/ubuntu--vg-root does not exist. Dropping to a shell!
libkmod: ERROR ../libkmod/libkmod-config.c:686 kmod_config_parse: /etc/modprobe.d/zfs.conf line 2: ignoring bad line starting with '#'
libkmod: ERROR ../libkmod/libkmod-config.c:686 kmod_config_parse: /etc/modprobe.d/zfs.conf line 3: ignoring bad line starting with '#'
libkmod: ERROR ../libkmod/libkmod-config.c:686 kmod_config_parse: /etc/modprobe.d/zfs.conf line 4: ignoring bad line starting with '#'
libkmod: ERROR ../libkmod/libkmod-config.c:686 kmod_config_parse: /etc/modprobe.d/zfs.conf line 5: ignoring bad line starting with '#'
libkmod: ERROR ../libkmod/libkmod-config.c:686 kmod_config_parse: /etc/modprobe.d/zfs.conf line 2: ignoring bad line starting with '#'
libkmod: ERROR ../libkmod/libkmod-config.c:686 kmod_config_parse: /etc/modprobe.d/zfs.conf line 3: ignoring bad line starting with '#'
libkmod: ERROR ../libkmod/libkmod-config.c:686 kmod_config_parse: /etc/modprobe.d/zfs.conf line 4: ignoring bad line starting with '#'
libkmod: ERROR ../libkmod/libkmod-config.c:686 kmod_config_parse: /etc/modprobe.d/zfs.conf line 5: ignoring bad line starting with '#'
libkmod: ERROR ../libkmod/libkmod-config.c:686 kmod_config_parse: /etc/modprobe.d/zfs.conf line 2: ignoring bad line starting with '#'
libkmod: ERROR ../libkmod/libkmod-config.c:686 kmod_config_parse: /etc/modprobe.d/zfs.conf line 3: ignoring bad line starting with '#'
libkmod: ERROR ../libkmod/libkmod-config.c:686 kmod_config_parse: /etc/modprobe.d/zfs.conf line 4: ignoring bad line starting with '#'
libkmod: ERROR ../libkmod/libkmod-config.c:686 kmod_config_parse: /etc/modprobe.d/zfs.conf line 5: ignoring bad line starting with '#'
Ich habe ZFS installiert, aber das Startlaufwerk ist nicht ZFS. Ich verstehe nicht, warum auskommentierte Zeilen als fehlerhaft interpretiert werden.
Hier ist meine fstab:
# <file system> <mount point> <type> <options> <dump> <pass>
/dev/mapper/ubuntu--vg-root / ext4 errors=remount-ro 0 1
# /boot was on /dev/sdb2 during installation
UUID=10d83bf1-14a9-40bf-8ada-7ffbf6220bf9 /boot ext2 defaults
0 2
# /boot/efi was on /dev/sdb1 during installation
UUID=BD9B-EA73 /boot/efi vfat defaults 0 1
/dev/mapper/ubuntu--vg-swap_1 none swap sw 0 0
Und einige Informationen zu meinem Boot-Laufwerk:
Model: ATA Corsair CSSD-V32 (scsi)
Disk /dev/sdc: 32.0GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Number Start End Size File system Name Flags
1 1049kB 538MB 537MB fat32 boot
2 538MB 794MB 256MB ext2
3 794MB 32.0GB 31.2GB lvm
Ich habe keine anderen Betriebssysteme installiert. Ich habe versucht, es von der Live-CD neu zu installieren, aber es erkennt meine vorhandene Installation nicht – auch nicht, nachdem ich meine Root-Partition manuell gemountet habe. Ich würde eine Neuinstallation von Grund auf vermeiden und würde wirklich gerne herausfinden, was dies verursacht, um meine eigenen Linux-Kenntnisse zu verbessern. Für jede Hilfe wäre ich sehr dankbar.
Antwort1
Wenn Sie per Chroot auf Ihr System zugreifen, generieren Sie Ihre ursprüngliche RAM-Disk neu.
Dieses Problem tritt wahrscheinlich aufgrund fehlender Module auf.
update-initramfs -k all -c
Vor dem Chroot-Einbinden /dev
und innerhalb des Chroot- /proc
Modus /sys
:
mount -t proc /proc /mnt/proc
mount -o bind /dev /mnt/dev
mount -o bind /sys /mnt/sys
Ich gehe hier davon aus, dass Sie Ihre Festplatte auf gemountet haben /mnt
. Meiner Erfahrung nach hängen solche Fehler zu 90 % mit fehlenden Modulen in der Ramdisk zusammen.
Außerdem würde ich vorschlagen, das fehlgeschlagene Upgrade in chroot fortzusetzen mit
dpkg --configure -a
apt-get -f install
apt-get upgrade
Antwort2
Ich habe diesen Fehler beim letzten Update erhalten, deshalb habe ich nie neu gestartet. Um ihn zu beheben, habe ich die Datei gelöscht, /etc/modprobe.d/zfs.conf
da ich derjenige war, der sie hinzugefügt hat, und ich sie nicht wirklich brauchte. Dann habe ich Folgendes ausgeführt:
update-initramfs -k all -c
Und jetzt scheint es für den Neustart bereit zu sein.