Ich wusste nicht genau, welchen Titel ich diesem Artikel geben sollte, da ich eine Reihe von Anweisungen sammeln werde, mit denen ich ein System wiederherstellen kann, das einen Kernel-Panikfehler zurückgibt . Diese Art von Fehler ist allgemein bekannt und ziemlich frustrierend, da das Betriebssystem nicht gestartet wird und weiterhin unzugänglich ist. Insbesondere werden wir über die Lösung sprechen, wenn wir die Fehlermeldung finden:
Kernel-Panik – keine Synchronisierung: VFS: Root-Fs können nicht auf unbekanntem Block (0,0) gemountet werden.
Der Ursprung des Fehlers.
In meinem Fall trat das Problem auf, nachdem ein Ubuntu-Server mit den üblichen Befehlen sudo apt-get update
: sudo apt-get update
und sudo apt-get upgrade
. Nach dem Update wurde auf dem Bildschirm eine Meldung angezeigt, in der ich aufgefordert wurde, das System neu zu starten.
Meine Überraschung war, dass ich nach dem Neustart auf die Fehlermeldung “Kernel-Panik – nicht synchronisieren: VFS: Root-Fs konnten nicht auf unbekanntem Block (0,0) gemountet werden” stieß und der Stress begann. Es handelte sich um einen VPS-Server mit dem Betriebssystem Ubuntu Server 16.04 (64 Bit) der Firma Vultr.
Obwohl es sich um einen Server handelt, funktionieren diese Anweisungen auf Heimcomputern und auch auf Servern anderer Unternehmen. Die Lösung wurde in diesem Beitrag aus den Ubuntu-Foren gefunden, aber ich werde versuchen, mehr Details zu diesem Thema zu geben.
Stellen Sie das System wieder her, sobald der Fehler “Kernel-Panic – Keine Synchronisierung” bei Finnix festgestellt wurde.
Sobald ich den Fehler identifiziert hatte, war das erste, was mir durch den Kopf ging , eine Sicherung dieser wichtigen Dateien zu erstellen . Dieser Schritt ist fast obligatorisch , da wir immer ein Backup haben, wenn der Wiederherstellungsprozess aus irgendeinem Grund fehlschlägt.
Da das Betriebssystem nicht startet, müssen wir auf eine LiveCD-Wiederherstellung zurückgreifen. Es gibt viele, aber die, die mir am besten gefallen hat , ist Finnix , basierend auf Debian.
Finnix auf einem PC booten.
Wenn wir es auf einem PC verwenden wollen, müssen wir mit dieser Live-CD ein bootfähiges USB-Laufwerk erstellen, oder wir können es direkt auf eine CD-ROM brennen. Sobald es gestartet ist, müssen wir den Anweisungen auf dem Bildschirm folgen, um eine Shell im System zu erhalten.
Booten von Finnix in Vultr.
Ich habe mich für Finnix entschieden, da es auch in Vultr verfügbar ist und wir es als benutzerdefiniertes ISO hochladen können . Um Finnix zu laden, greifen wir auf das Vultr-Kontrollfeld zu, wählen den Server aus, den wir wiederherstellen möchten, und gehen zum Settings ? Custom ISO
und wählen Finnix - 111 x86
. Zum Schluss drücken wir den Attach ISO and Reboot
.
Jetzt warten wir, bis die ISO-Übertragung abgeschlossen ist, und klicken auf die Schaltfläche View console
anzeigen.
An dieser Stelle wird auf dem Bildschirm etwas angezeigt, das dem in der folgenden Abbildung entspricht.
Wir müssen nur die Architektur auswählen, mit der wir Finnix starten möchten . In meinem Fall und in den meisten modernen Systemen wählen wir “Boot Finnix (64-bit)” . Wir warten, bis alle Module im Speicher geladen sind, und nach einigen Sekunden haben wir ein Terminal, von dem aus wir das System wiederherstellen können.
Wiederherstellung des Systems und Booten mit Grub.
Wir beginnen mit dem Mounten der Betriebssystemdateien, die wir wiederherstellen möchten. Dazu führen wir den Befehl sudo fdisk -l
und sehen, was die Systemstartpartition ist.
In meinem Fall ist die Partition /dev/vda1
, also muss ich diese Partition jetzt mit dem Befehl mounten:
sudo mount /dev/vda1 /mnt
Verwenden des Finnix-Terminals zum Sichern der Dateien.
In meinem Fall befinden sich die wichtigen Dateien im Ordner /mnt/home/zeokat/www
besteht der erste Schritt darin, diesen Ordner mit dem folgenden Befehl zu komprimieren:
tar -zcf backupfiles.tar.gz /mnt/home/zeokat/www
Der nächste Schritt bestand darin, die Sicherungsdatei auf meinen PC zu übertragen, für den wir SFTP oder eine andere Methode verwenden können, die Sie sich vorstellen können. Um über SFTP zugreifen zu können, müssen wir dem Root-Benutzer ein Passwort zuweisen , für das wir den Befehl passwd
ausführen.
Als nächstes starten wir den SSH-Server mit dem Befehl:
/etc/init.d/ssh start
Jetzt können wir unseren bevorzugten SFTP-Client verwenden , um die Sicherungsdateien herunterzuladen.
Wir haben bereits die wichtigen Dateien gesichert, daher werden wir versuchen, das System wiederherzustellen, damit es richtig startet. Nun führen wir folgende Befehle aus:
sudo mount --bind /dev /mnt/dev
sudo mount --bind /dev/pts /mnt/dev/pts
sudo mount --bind /proc /mnt/proc
sudo mount --bind /sys /mnt/sys
Zum Abschluss führen wir aus:
sudo chroot /mnt
update-initramfs -u -v
grub-install --recheck /dev/vda
update-grub
reboot
Wenn Sie sich auf einem Vultr-Server befinden und den reboot
ausführen, wird auf dem Bildschirm mit Sicherheit die Meldung “In Chroot ausführen , Anforderung ignorieren” angezeigt. Sie müssen also zuerst den Befehl exit
ausführen und können dann den Befehl reboot
ausführen. Schließlich verwenden wir die Schaltfläche ” Remove ISO
im Settings ? Custom ISO
der Systemsteuerung von Vultr.