Sie fragen - wir antworten!

Nur-Lese-Dateisystem

Mögliche Gründe:

  • Beschädigtes Dateisystem
  • Falscher Shutdown
  • Konfigurationsfehler

Obwohl die meisten Dateisysteme darauf ausgelegt sind, Fehler zu vermeiden, können sie dennoch auftreten. In solchen Fällen löst Linux einen Schutzmechanismus aus, indem es ein fehlgeschlagenes Blockgerät als schreibgeschützt einhängt. Dies ermöglicht die Lokalisierung von Problemen und verhindert eine weitere Datenzerstörung. Daher wäre die erste und offensichtlichste Option, das Dateisystem zu überprüfen und alle Fehler zu beheben, falls welche gefunden werden.

Diagnose

Beginnen Sie mit einem schnellen Blick auf die angehängten Datenträger:

sudo fdisk -l
Disk /dev/sda: 40 GiB, 42949672960 bytes, 83886080 sectors
Disk model: EXAMPLE HARDDISK
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 147676BD-7D65-4290-91F0-B45ACD9E360B
  
Device     Start      End  Sectors Size Type
/dev/sda1   2048     4095     2048   1M BIOS boot
/dev/sda2   4096 83884031 83879936  40G Linux filesystem
  
Disk /dev/sdb: 25 GiB, 26843545600 bytes, 52428800 sectors
Disk model: EXAMPLE HARDDISK
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x880bd48d
      
Device     Boot Start      End  Sectors Size Id Type
/dev/sdb1        2048 52428799 52426752  25G 83 Linux

Zwei Datenträger werden angezeigt. Der erste ist /dev/sda mit zwei Partitionen: /dev/sda1 und /dev/sda2. Diese Festplatte wird für das System verwendet und ist dauerhaft eingebunden. Fehlerbehebungen sind ohne Herunterfahren des Betriebssystems nicht möglich. Es gibt jedoch einen Trick, der es Ihnen ermöglicht, den Zustand der Systemfestplatte abzuschätzen.

Überprüfung eines Dateisystems

Führen Sie fsck mit der Option -n aus und überprüfen Sie die Ausgabe:

sudo fsck -n /dev/sda2
fsck from util-linux 2.37.2
e2fsck 1.46.5 (30-Dec-2021)
Warning!  /dev/sda2 is mounted.
Warning: skipping journal recovery because doing a read-only filesystem check.
/dev/sda2: clean, 118002/2621440 files, 1794718/10484992 blocks

Die Beschriftung «sauber» zeigt an, dass es keine Probleme mit dem Dateisystem der Systemdisk gibt. Wenn der Fehler durch dieses spezielle Laufwerk verursacht wird, können Sie versuchen, es erneut zu mounten, ohne das Risiko eines Datenverlusts:

sudo mount -o remount,rw /dev/sda2 /

Dies kann in einer Reihe von Fällen helfen. Sie können auch versuchen, den Server neu zu starten:

sudo shutdown -r now

Lassen Sie uns nun eine andere Festplatte, /dev/sdb, untersuchen. Fahren Sie mit einer schnellen Diagnose fort:

sudo fsck -n /dev/sdb1
fsck from util-linux 2.37.2
e2fsck 1.46.5 (30-Dec-2021)
ext2fs_open2: Bad magic number in super-block
fsck.ext2: Superblock invalid, trying backup blocks...
/dev/sdb1 was not cleanly unmounted, check forced.
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
Block bitmap differences:  +(32768--33796) +(98304--99332) +(163840--164868) +(2                                                                                                             29376--230404) +(294912--295940) +(819200--820228) +(884736--885764) +(1605632--                                                                                                             1606660) +(2654208--2655236) +(4096000--4097028)
…

Korrigiere das beschädigte Dateisystem

Hier sehen wir, wie die Befehlsausgabe aussieht, wenn das Dateisystem auf der ersten Partition, /dev/sdb1, tatsächlich beschädigt ist. Die Option -n dient jedoch nur zu diagnostischen Zwecken und nimmt keine Änderungen vor. Verwenden Sie die Option -f, um ein beschädigtes Dateisystem zu reparieren:

sudo fsck -f /dev/sdb1
fsck from util-linux 2.37.2
e2fsck 1.46.5 (30-Dec-2021)
ext2fs_open2: Bad magic number in super-block
fsck.ext2: Superblock invalid, trying backup blocks...
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
Block bitmap differences:  +(32768--33796) +(98304--99332) +(163840--164868) +(229376--230404) +(294912--295940) +(819200--820228) +(884736--885764) +(1605632--1606660) +(2654208--2655236) +(4096000--4097028)
Fix[y]? yes
Padding at end of inode bitmap is not set. Fix[y]? yes
      
/dev/sdb1: ***** FILE SYSTEM WAS MODIFIED *****
/dev/sdb1: 11/1638400 files (0.0% non-contiguous), 146893/6553344 blocks

Voila! Es funktioniert! Überprüfen wir noch einmal:

sudo fsck -n /dev/sdb1
fsck from util-linux 2.37.2
e2fsck 1.46.5 (30-Dec-2021)
/dev/sdb1: clean, 11/1638400 files, 146893/6553344 blocks

Das Dateisystem ist sauber, das bedeutet, dass das Problem gelöst ist.

Manchmal kann eine ähnliche Fehlermeldung das Ergebnis einer Option (errors=remount-ro) sein, die für eine bestimmte nicht-systemspezifische Partition in /etc/fstab angegeben ist. Diese Option erweist sich als wertvoll, wenn das System auf einen Fehler stößt, der das Dateisystem gefährdet. Sie verhindert jegliche zusätzlichen Modifikationen, die das Problem verschlimmern oder zu Datenverlust führen könnten. Um diesen Fehler zu beheben, mounten Sie das Dateisystem einfach erneut für Lese-/Schreibzugriffe, wie oben erwähnt.

Siehe auch:



Aktualisiert: 12.03.2025

Veröffentlicht: 22.05.2024


Haben Sie noch Fragen? Schreiben Sie uns!

By clicking «I Accept» you confirm that you have read and accepted the website Terms and Conditions, Privacy Policy, and Moneyback Policy.