Ein Leser meiner NAS-Tutorials hatte mit einem Problem seines Dateisystems zu kämpfen und hat dabei um meine Hilfe gebeten. Durch Stromausfälle oder Unachtsamkeit beim Putzen kann durch einen ungeplanten Neustart des NAS das Dateisystem einen Schaden davon tragen. Wenn man aber über eine Linux-Konsole noch Zugriff auf die Festplatte bekommen kann, ist dies oftmals kein Beinbruch. Blöd nur, wenn genau der Superblock vom Dateiverlust betroffen ist. Ich zeige in diesem Artikel einen kompletten Filesystemcheck inklusive der Lösung des vorstehenden Problems.
Gehen wir davon aus, dass die Festplatte im Moubntpoint /mnt/HD_b2
betroffen ist. Jetzt muss man zunächst herausfinden, welches Device dort eingebunden ist. Dies geht über den Befehl mount
welcher z.B. die folgende Ausgabe erzeugt:
rootfs on / type rootfs (rw) /dev/root on / type ext2 (rw) proc on /proc type proc (rw,nodiratime) /dev/loop0 on /sys/crfs type squashfs (ro) /dev/sda2 on /mnt/HD_a2 type ext2 (rw) /dev/sdb2 on /mnt/HD_b2 type ext2 (rw) /dev/sda4 on /mnt/HD_a4 type ext2 (rw) /dev/sdb4 on /mnt/HD_b4 type ext2 (rw) none on /proc/bus/usb type usbfs (rw) devpts on /dev/pts type devpts (rw)
Ich habe mal fett markiert, was für diesen Fehler relevant ist. Jetzt löst man das Device vom Mountpoint mittels
umount /mnt/HD_b2/
Und führt anschließend einen Filesystemcheck durch:
e2fsck -pf /dev/sdb2/
Hier tritt nun der Fehler auf:
/dev/sdb2/: The superblock could not be read or does not describe a correct ext2 filesystem. If the device is valid and it really contains an ext2 filesystem (and not swap or ufs or something else), then the superblock is corrupt, and you might try running e2fsck with an alternate superblock: e2fsck -b 8193
Man kann jetzt mal den e2fsck -b 8193 /dev/sdb2/
ausprobieren, aber vermutlich führt dieser nicht zum Erfolg (sonst würdest du ja wahrscheinlich den Artikel nicht lesen).
Um jetzt die alternativen Superblocks rauszufinden muss man den folgenden Befehl eingeben:
mke2fs -n /dev/sdb2
Dieser zeigt beispielhaft die folgende Ausgabe (diese wird bei dir anders sein!):
mke2fs 1.41.0 (10-Jul-2008) Filesystem label= OS type: Linux Block size=4096 (log=2) Fragment size=4096 (log=2) 45727744 inodes, 182881951 blocks 9144097 blocks (5.00%) reserved for the super user First data block=0 Maximum filesystem blocks=0 5582 block groups 32768 blocks per group, 32768 fragments per group 8192 inodes per group Superblock backups stored on blocks: 32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968, 102400000
Fett markiert die wichtige Ausgabe der alternativen Superblöcke.
Jetzt muss man nacheinander die Blocknummern durchgehen, bis einer funktioniert. Beispielsweise also für den ersten Versuch:
e2fsck -b 32768 /dev/sdb2/
Danach entweder neu mounten oder das NAS einfach übers Webinterface neu starten.