Ein Dateisystem ist eine Datenstruktur, die hilft zu steuern, wie Daten auf einem Computersystem gespeichert und abgerufen werden. Ein Dateisystem kann auch als physische (oder erweiterte) Partition auf einer Festplatte betrachtet werden. Wenn es nicht gut gewartet und regelmäßig überwacht wird, kann es auf lange Sicht auf so viele verschiedene Arten beschädigt oder beschädigt werden.
Es gibt mehrere Faktoren, die dazu führen können, dass ein Dateisystem ungesund wird: Systemabstürze, Hardware oder Software Fehlfunktionen, fehlerhafte Treiber und Programme, falsche Abstimmung, Überlastung mit übermäßigen Daten und andere kleinere Glitches.
Jedes dieser Probleme kann dazu führen, dass Linux ein Dateisystem nicht ordnungsgemäß mountet (oder unmountet), was zu einem Systemausfall führt.
Lesen Sie auch: 7 Möglichkeiten, den Dateisystemtyp in Linux zu bestimmen (Ext2, Ext3 oder Ext4)
Darüber hinaus kann die Ausführung Ihres Systems mit einem beeinträchtigten Dateisystem zu anderen Laufzeitfehlern in Betriebssystemkomponenten oder in Benutzeranwendungen führen, die zu schwerwiegenden Datenverlusten führen können. Um eine Beschädigung oder Beschädigung des Dateisystems zu vermeiden, müssen Sie den Zustand des Dateisystems im Auge behalten.
In diesem Artikel werden Tools zum Überwachen und Verwalten des Zustands von ext2-, ext3- und ext4-Dateisystemen behandelt. Alle hier beschriebenen Tools benötigen Root-Benutzerrechte, verwenden Sie daher die sudo-Befehl sie zu führen.
dumpe2fs ist ein Befehlszeilentool, das verwendet wird, um ext2/ext3/ext4-Dateisysteminformationen zu speichern, d. h. es zeigt Superblock- und Blockgruppeninformationen für das Dateisystem auf dem Gerät an.
Vor dem Laufen dumpe2fs, stellen Sie sicher, dass Sie laufen df -hT Befehl, um die Gerätenamen des Dateisystems zu kennen.
$ sudo dumpe2fs /dev/sda10.
dumpe2fs 1.42.13 (17. Mai 2015) Name des Dateisystem-Volumes: Zuletzt gemountet auf: / Dateisystem-UUID: bb29dda3-bdaa-4b39-86cf-4a6dc9634a1b. Magische Zahl des Dateisystems: 0xEF53. Dateisystem-Revision #: 1 (dynamisch) Dateisystemfeatures: has_journal ext_attr resize_inode dir_index Dateityp Needs_Recovery Extent flex_bg sparse_super large_file riesige_file uninit_bg dir_nlink extra_isize. Dateisystem-Flags: signed_directory_hash Standard-Mount-Optionen: user_xattr acl. Dateisystemstatus: sauber. Fehlerverhalten: Weiter. Dateisystem-Betriebssystemtyp: Linux. Inode-Zahl: 21544960. Blockanzahl: 86154752. Reservierte Blockanzahl: 4307737. Kostenlose Blöcke: 22387732. Kostenlose Inodes: 21026406. Erster Block: 0. Blockgröße: 4096. Fragmentgröße: 4096. Reservierte GDT-Blöcke: 1003. Blöcke pro Gruppe: 32768. Fragmente pro Gruppe: 32768. Inodes pro Gruppe: 8192. Inode-Blöcke pro Gruppe: 512. Gruppengröße des Flexblocks: 16. Dateisystem erstellt: So. 31. Juli 16:19:36 2016. Letzte Montagezeit: Mo 6. November 10:25:28 2017. Letzte Schreibzeit: Mo 6. November 10:25:19 2017. Mount-Anzahl: 432. Maximale Mount-Anzahl: -1. Zuletzt geprüft: So. 31. Juli 16:19:36 2016. Prüfintervall: 0 () Lebenslange Schreibvorgänge: 2834 GB. UID für reservierte Blöcke: 0 (Benutzer root) Reservierte Blöcke gid: 0 (Gruppenwurzel) Erste Inode: 11. Inode-Größe: 256. Erforderliche zusätzliche Größe: 28. Gewünschte Extragröße: 28. Journal-Inode: 8. Erste verwaiste Inode: 6947324. Standardverzeichnis-Hash: half_md4. Verzeichnis Hash Seed: 9da5dafb-bded-494d-ba7f-5c0ff3d9b805. Journalsicherung: Inode-Blöcke. Journalfunktionen: journal_incompat_revoke. Zeitschriftengröße: 128M. Zeitschriftenlänge: 32768. Journalsequenz: 0x00580f0c. Zeitschriftenbeginn: 12055.
Sie können die -B
Flag, um alle Blöcke anzuzeigen, die im Dateisystem als fehlerhaft reserviert sind (keine Ausgabe impliziert Badblocks):
$ dumpe2fs -b.
e2fsck wird verwendet, um ext2/ext3/ext4-Dateisysteme auf Fehler zu untersuchen und fsck prüft und kann optional ein Linux-Dateisystem reparieren; es ist im Grunde ein Front-End für eine Reihe von Dateisystem-Checkern (fsck.fstype zum Beispiel fsck.ext3, fsck.sfx etc) unter Linux angeboten.
Denken Sie daran, dass Linux läuft e2fack/fsck automatisch beim Systemstart auf Partitionen, die zum Einchecken gekennzeichnet sind /etc/fstab Konfigurationsdatei. Dies geschieht normalerweise, nachdem ein Dateisystem nicht sauber ausgehängt wurde.
Aufmerksamkeit: Renne nicht e2fsck oder fsck Unmounten Sie auf gemounteten Dateisystemen immer zuerst eine Partition, bevor Sie diese Tools darauf ausführen können, wie unten gezeigt.
$ sudo unmounten /dev/sda10. $ sudo fsck /dev/sda10.
Aktivieren Sie alternativ die ausführliche Ausgabe mit dem -V
wechseln und verwenden -T
um einen Dateisystemtyp wie diesen anzugeben:
$ sudo fsck -Vt ext4 /dev/sda10.
Wir haben von Anfang an erwähnt, dass eine der Ursachen für Schäden am Dateisystem falsches Tuning ist. Du kannst den... benutzen tune2fs Dienstprogramm, um die einstellbaren Parameter von ext2/ext3/ext4-Dateisystemen wie unten beschrieben zu ändern.
Um den Inhalt des Dateisystem-Superblocks anzuzeigen, einschließlich der aktuellen Werte der Parameter, verwenden Sie die -l
Option wie abgebildet.
$ sudo tune2fs -l /dev/sda10.
tune2fs 1.42.13 (17. Mai 2015) Name des Dateisystem-Volumes: Zuletzt gemountet auf: / Dateisystem-UUID: bb29dda3-bdaa-4b39-86cf-4a6dc9634a1b. Magische Zahl des Dateisystems: 0xEF53. Dateisystem-Revision #: 1 (dynamisch) Dateisystemfeatures: has_journal ext_attr resize_inode dir_index Dateityp Needs_Recovery Extent flex_bg sparse_super large_file riesige_file uninit_bg dir_nlink extra_isize. Dateisystem-Flags: signed_directory_hash Standard-Mount-Optionen: user_xattr acl. Dateisystemstatus: sauber. Fehlerverhalten: Weiter. Dateisystem-Betriebssystemtyp: Linux. Inode-Zahl: 21544960. Blockanzahl: 86154752. Reservierte Blockanzahl: 4307737. Kostenlose Blöcke: 22387732. Kostenlose Inodes: 21026406. Erster Block: 0. Blockgröße: 4096. Fragmentgröße: 4096. Reservierte GDT-Blöcke: 1003. Blöcke pro Gruppe: 32768. Fragmente pro Gruppe: 32768. Inodes pro Gruppe: 8192. Inode-Blöcke pro Gruppe: 512. Gruppengröße des Flexblocks: 16. Dateisystem erstellt: So. 31. Juli 16:19:36 2016. Letzte Montagezeit: Mo 6. November 10:25:28 2017. Letzte Schreibzeit: Mo 6. November 10:25:19 2017. Mount-Anzahl: 432. Maximale Mount-Anzahl: -1. Zuletzt geprüft: So. 31. Juli 16:19:36 2016. Prüfintervall: 0 () Lebenslange Schreibvorgänge: 2834 GB. UID für reservierte Blöcke: 0 (Benutzer root) Reservierte Blöcke gid: 0 (Gruppenwurzel) Erste Inode: 11. Inode-Größe: 256. Erforderliche zusätzliche Größe: 28. Gewünschte Extragröße: 28. Journal-Inode: 8. Erste verwaiste Inode: 6947324. Standardverzeichnis-Hash: half_md4. Verzeichnis Hash Seed: 9da5dafb-bded-494d-ba7f-5c0ff3d9b805. Journalsicherung: Inode-Blöcke.
Als nächstes verwenden Sie die -C
Flag können Sie die Anzahl der Mounts festlegen, nach denen das Dateisystem überprüft wird e2fsck. Dieser Befehl weist das System an, e2fsck gegen. auszuführen /dev/sda10
nach jedem 4 Anschlüsse.
$ sudo tune2fs -c 4 /dev/sda10tune2fs 1.42.13 (17. Mai 2015) Maximale Mount-Anzahl auf 4 setzen.
Sie können auch die Zeit zwischen zwei Dateisystemüberprüfungen mit dem -ich
Möglichkeit. Der folgende Befehl setzt ein Intervall von 2 Tage zwischen Dateisystemprüfungen.
$ sudo tune2fs -i 2d /dev/sda10tune2fs 1.42.13 (17. Mai 2015) Intervall zwischen den Prüfungen auf 172800 Sekunden einstellen.
Wenn Sie nun diesen Befehl unten ausführen, wird das Dateisystem-Prüfintervall für /dev/sda10
ist jetzt eingestellt.
$ sudo tune2fs -l /dev/sda10.
Dateisystem erstellt: So. 31. Juli 16:19:36 2016. Letzte Montagezeit: Mo 6. November 10:25:28 2017. Letzte Schreibzeit: Mo 6 Nov 13:49:50 2017. Mount-Anzahl: 432. Maximale Mount-Anzahl: 4. Zuletzt geprüft: So. 31. Juli 16:19:36 2016. Prüfintervall: 172800 (2 Tage)Nächste Kontrolle nach: Di 2. August 16:19:36 2016. Lebenslange Schreibvorgänge: 2834 GB. UID für reservierte Blöcke: 0 (Benutzer root) Reservierte Blöcke gid: 0 (Gruppenwurzel) Erste Inode: 11. Inode-Größe: 256. Erforderliche zusätzliche Größe: 28. Gewünschte Extragröße: 28. Journal-Inode: 8. Erste verwaiste Inode: 6947324. Standardverzeichnis-Hash: half_md4. Verzeichnis Hash Seed: 9da5dafb-bded-494d-ba7f-5c0ff3d9b805. Journalsicherung: Inode-Blöcke.
Um die Standard-Journaling-Parameter zu ändern, verwenden Sie die -J
Möglichkeit. Diese Option hat auch Unteroptionen: size=journal-size (Legt die Größe des Journals fest), Gerät=externes-Journal (gibt das Gerät an, auf dem es gespeichert ist) und location=journal-location (definiert den Speicherort des Journals).
Beachten Sie, dass für ein Dateisystem nur eine der Größen- oder Geräteoptionen festgelegt werden kann:
$ sudo tune2fs -J size=4MB /dev/sda10.
Zu guter Letzt kann das Volume-Label eines Dateisystems mit dem -L
Option wie unten.
$ sudo tune2fs -L "ROOT" /dev/sda10.
debuggen ist ein einfacher, interaktiver, kommandozeilenbasierter Debugger für ext2/ext3/ext4-Dateisysteme. Es ermöglicht Ihnen, Dateisystemparameter interaktiv zu ändern. Geben Sie zum Anzeigen von Unterbefehlen oder Anforderungen ein "?"
.
$ sudo debugfs /dev/sda10.
Standardmäßig sollte das Dateisystem im Lese-Schreib-Modus geöffnet werden, verwenden Sie die -w
Flag, um es im Lese-/Schreibmodus zu öffnen. Um es im Katastrophenmodus zu öffnen, verwenden Sie die -C
Möglichkeit.
debugfs 1.42.13 (17. Mai 2015) Debuggen:? Verfügbare Debugfs-Requests: show_debugfs_params, params Zeigt debugfs-Parameter an. open_filesys, open Öffnet ein Dateisystem. close_filesys, close Schließt das Dateisystem. freefrag, e2freefrag Fragmentierung des freien Speicherplatzes melden. Feature, Features Superblock-Features festlegen/drucken. dirty_filesys, dirty Markiert das Dateisystem als dirty. init_filesys Initialisiert ein Dateisystem (ZERSTÖRT DATEN) show_super_stats, stats Superblock-Statistiken anzeigen. ncheck Inode->Namensübersetzung durchführen. icheck Do Block->Inode-Übersetzung. change_root_directory, chroot...
Um die Fragmentierung des freien Speicherplatzes anzuzeigen, verwenden Sie die freifrag Anfrage, so.
Debuggen: freifrag
Gerät: /dev/sda10. Blockgröße: 4096 Byte. Gesamtzahl Blöcke: 86154752. Freie Blöcke: 22387732 (26,0 %) min. freier Umfang: 4 KB max. freier Umfang: 2064256 KB. Durchschn. freier Umfang: 2664 KB. Anzahl Freier Extent: 33625 HISTOGRAMM DER FREIEN EXTENT-GRÖSSEN: Extent-Größenbereich: Freie Extents Freie Blöcke Prozent 4K... 8K-: 4883 4883 0,02% 8K... 16K-: 4029 9357 0,04% 16K... 32K-: 3172 15824 0,07% 32K... 64K-: 2523 27916 0,12% 64K... 128K-: 2041 45142 0,20% 128K... 256K-: 2088 95442 0,43% 256K... 512K-: 2462 218526 0,98% 512K... 1024K-: 3175 571055 2,55% 1M... 2M-: 4551 1609188 7,19% 2M... 4M-: 2870 1942177 8,68% 4M... 8M-: 1065 1448374 6.47% 8M... 16M-: 364 891633 3,98% 16M... 32M-: 194 984448 4,40% 32M... 64M-: 86 873181 3,90% 64M... 128M-: 77 1733629 7,74% 128M... 256M-: 11 490445 2,19 % 256M... 512M-: 10 889448 3,97% 512M... 1024M-: 2 343904 1,54% 1G... 2G-: 22 10217801 45,64% Debuggen:
Sie können so viele andere Anfragen untersuchen, wie das Erstellen oder Entfernen von Dateien oder Verzeichnissen, das Ändern des aktuellen Arbeitsverzeichnisses und vieles mehr, indem Sie einfach die bereitgestellte Kurzbeschreibung lesen. Um Debugfs zu beenden, verwenden Sie die Q
Anfrage.
Das ist alles für jetzt! Wir haben unten eine Sammlung verwandter Artikel in verschiedenen Kategorien, die Sie nützlich finden werden.
Die Aufrechterhaltung eines gesunden Dateisystems verbessert immer die Gesamtleistung Ihres Linux-Systems. Wenn Sie Fragen oder zusätzliche Gedanken haben, verwenden Sie das Kommentarformular unten.