Schreibgeschütztes Dateisystem nach Systemabsturz und Kaltstart beenden (20.04.2 Server, VM)

Schreibgeschütztes Dateisystem nach Systemabsturz und Kaltstart beenden (20.04.2 Server, VM)

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-upgradesDarü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

verwandte Informationen