.png)
Gestern stürzte mein System ab und ich musste einen Hard-Reset auf meinem Host-Rechner durchführen, während zwei virtuelle Maschinen liefen. Die erste Maschine hat überlebt und die zweite wurde in einen Nur-Lese-Modus versetzt. Nach der Anmeldung bei der VM werden mir die folgenden Meldungen angezeigt.
Unable to setup logging. [Errno 30] Read-only file system: '/var/log/landscape/sysinfo.log' run-parts: /etc/update-mot.d/50-landscape-sysinfo exited with return code 1 /usr/lib/ubuntu-release-upgrader/release-upgrade-motd: 31: cannot create /var/lib/ubuntu-release-upgrader/release-upgrade-available: Read-only file system mktemp: failedd to create file via template '/var/lib/update-notifier/tmp.XXXXXXXXXX': Read-only file system run-parts: /etc/update-motd.d/95-hwe-eol exited with return code 1 /usr/lib/update-notifier/update-motd-fsck-at-reboot: 38: cannot create /var/lib/update-notifier/fsck-at-reboot: Read-only file system
Ich habe die Disk-Image-Datei vom Host überprüft, in diesem Fall handelt es sich um eine qcow2-Datei, die ich zusammen mit KVM verwende.
sudo qemu-img check ubuntu204.qcow2
Das Ergebnis ist:
No errors were found on the image. 245760/245760 = 100.00% allocated, 0.00% fragmented, 0.00% compressed clusters Image end offset: 16108814336
Ich habe gelesen, dass dies ein erzwungener Zustand zum Schutz des Dateisystems ist und dass ich den schreibgeschützten Modus einfach beenden kann, wenn ich die Festplatte scanne und alles in Ordnung ist. Wie mache ich das mit der folgenden Partitionstabelle auf einem TTY im schreibgeschützten Modus?
loop0 0
loop1 0
loop2 0
loop3 0
loop4 0
loop5 0
|-sda 0 15G 0 disk
|-sda1 0 1M 0 part
|-sda2 0 1G 0 part /boot
|-sda3 0 14G 0 part
|-ubuntu--vg-ubuntu--lv 0 14G 0 lvm /
|-sr0 1 1024M 0 rom
Aufgrund der Warnungen vermute ich, dass möglicherweise ein Problem vorliegt. unattended-upgrades
Darüber hinaus bin ich an weiteren Informationen zu weiteren Prüfungen interessiert, die Sie zur Gewährleistung der Integrität beider Maschinen empfehlen würden.
Antwort1
So stellen Sie eine qcow2-Disk-Image-Datei mit fsck vom Host wieder her
Netzwerkblock-Gerätemodul laden:
sudo modprobe nbd max_part=8
Maschine ausschalten:
sudo virsh destroy virtual-machine
Disk-Image verbinden:
sudo qemu-nbd --connect=/dev/nbd0 /var/lib/libvirt/images/virtual-machine.qcow2
Datenträger prüfen: (Der Datenträger ist jetzt auf dem Host gemountet, Sie können ihn in Nautilus/Explorer sehen)
sudo fsck /dev/nbd0p2
Bei mir waren zwei zusätzliche Laufwerke montiert, und ich habe gerade sowohl nbd-dm3 als auch nbd0p2 gescannt. Hier ist ein Beispiel für die erwartete Ausgabe, die ich einfach alle mit „Ja“ beantwortet habe.
fsck from util-linux 2.25.2
e2fsck 1.42.12 (29-Aug-2014)
/dev/nbd0p1: recovering journal
/dev/nbd0p1 contains a file system with errors, check forced.
Pass 1: Checking inodes, blocks, and sizes
Inodes that were part of a corrupted orphan linked list found. Fix<y>? yes
Inode 274 was part of the orphaned inode list. FIXED.
Inode 132276 was part of the orphaned inode list. FIXED.
Deleted inode 142248 has zero dtime. Fix<y>? yes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
Block bitmap differences: -603674 -623174 +(689342--689343)
Fix<y>? yes
Free blocks count wrong for group #18 (15076, counted=15077).
Fix<y>? yes
Free blocks count wrong for group #19 (11674, counted=11675).
Fix<y>? yes
Free blocks count wrong (632938, counted=670871).
Fix<y>? yes
Inode bitmap differences: -274 -132276 -142248
Fix<y>? yes
Free inodes count wrong for group #0 (52, counted=53).
Fix<y>? yes
Free inodes count wrong for group #16 (99, counted=100).
Fix<y>? yes
Free inodes count wrong for group #17 (519, counted=520).
Fix<y>? yes
Free inodes count wrong (204392, counted=204599).
Fix<y>? yes
/dev/nbd0p1: ***** FILE SYSTEM WAS MODIFIED *****
/dev/nbd0p1: 101833/306432 files (0.2% non-contiguous), 553321/1224192 blocks
Gerät trennen:
sudo qemu-nbd --disconnect /dev/nbd0
/dev/nbd0 getrennt
Starten Sie Ihre Maschine und prüfen Sie, ob es funktioniert hat:
virsh start virtual-machine
Quelle:https://gist.github.com/islander/8517685e3a9f7e0e1d458033710f0893