1.104.2 Erhaltung der Dateisystemintegrität

Wichtung: 3

Beschreibung: Die Kandidaten sollen in der Lage sein, sowohl ein Standard-Dateisystem zu pflegen, als auch die zusätzlichen Daten bei einem Journaling Dateisystem.

Wichtigste Wissensgebiete:
Sicherstellen der Integrität eines Dateisystems.
Überwachen des freien Platzes und der freien Inodes.
Beheben einfacher Dateisystemprobleme.

Liste wichtiger Dateien, Verzeichnisse und Anwendungen:
du
df
fsck
e2fsck
mke2fs
debugfs
dumpe2fs
tune2fs

Ein Überblick über das Linux-Filesystem - INODES

Inode kann man am besten als Informationsknoten oder Indexeintrag bezeichnen. Inodes sind die Besonderheiten von Linux-Dateisystemen, welche diese unter anderem von DOS-FAT-Dateisystemen unterscheiden. Im Prinzip besitzt jedes Dateisystem einer Partition eine Inhaltstabelle, anhand welcher die Dateien und Verzeichnisse auffindbar sind.

Inodes kann man sich so vorstellen: jede Datei in einem Dateisystem besitzt eine Inode. Diese beinhaltet so gut wie alle Informationen über die einzelne Datei. Ausnahme sind der Dateiname an sich und die eigentlichen Daten:

  • Besitzer der Datei
  • bevorrechtigte Gruppe
  • Zugriffsrechte der Datei
  • Typ der Datei (einfache Datei, Verzeichnis, Link, …)
  • Größe der Datei (in Bytes)
  • Referenzzähler (Anzahl der Hardlinks = Namen der Datei, d. h. Zahl der Verweise aus den Verzeichnissen auf die Datei)
  • Datum der letzten Inode-Änderung, des letzten Zugriffs auf die Datei (letzte Dateiöffnung) und der letzten Modifikation der Datei
  • Verweis/Verweise auf die eigentlichen Cluster der Datei.

Das FAT-Dateisystem verwaltet beispielsweise die Cluster (Windows-Bezeichnung) bzw. Blöcke (Linux-Bezeichnung) in einer zentralen Tabelle. Unter Linux-Dateisystemen sind die Informationen in den Inodes enthalten. Die inodes sind nun ihrerseits in einer linearen Liste abgelegt, so dass man sie einfach nummerieren kann. Entsprechend werden die inodes auch über ihre fortlaufende Nummer angesprochen.

Hard-Links

Mit dem Befehl ln Datei hart-link wird ein so genannter Hard-Link erstellt.

  • Alle Links bleiben funktionstüchtig, wenn die Ursprungdatei verschoben wird. Es werden dabei ja nur die Verzeichniseintrage der Ursprungsdatei geändert. Am inode ändert sich nichts.
  • Alle harten Links sind gleichberechtigt.
  • Wenn die Ursprungsdatei nicht mehr gebraucht wird, bleiben die anderen harten Links funktionstüchtig 

Symbolische Links

Symbolische Links werden genutzt, wenn die Verweise auf Dateien gesetzt werden, die sich nicht auf derselben Partition befinden. Ein symbolischer Link verweist nicht direkt auf einen inode, sondern auf einen Pfad. So verweist der Link beispielsweise ins Leere, wenn die Ursprungsdatei gelöscht wird. Symbolische Links werden gerne bei Gerätedateien (CD-Laufwerk, etc) eingesetzt, da symbolische Links transparenter als Hard-Links sind, da man nachverfolgen kann, wohin diese verweisen.

ln -s Datei symbolischer-link = symbolischen Link erstellen
ls -n = symbolische Links anzeigen

fsck - Dateisysteme überprüfen

Mit dem Programm fsck können Dateisysteme auf Integrität getestet und repariert werden. Die unterschiedlichen Dateisysteme werden mit folgenden Parametern gestartet:

e2fsck bzw. fsck.ext2 = das Second Extended Filesystem
reiserfsck = ReiserFS
fsck.minix = Minix Dateisysteme
fsck.msdos = DOS-FAT-Systeme
fsck.vfat = Windows-VFAT-Systeme
fsck.xfs = XFS-Dateisysteme

Die Anwendung des fsck-Programms sollte immer nur auf nicht gemounteten Dateisystemen stattfinden. fsck kann mit folgenden Optionen gestartet werden:

-f = Überprüfung wird erzwungen, auch wenn das Dateisystem ein gesetztes Valid-Flag hat.
-p = Automatische Reparatur
-n = no - Das Dateisystem wird ReadOnly geöffnet. Die Reparatur wird simuliert.
-y = yes - Das genaue Gegenteil von -n.

df (disk free)

df zeigt den Speicherverbrauch der einzelnen Mount-Points an:

Filesystem           1k-blocks      Used Available Use% Mounted on
/dev/hda2 2071328 1051656 914448 53% /
/dev/hda3 3099108 1737096 1204580 59% /usr

Mit der Option i ist es möglich, sich die INodes anzeigen zu lassen:

Filesystem            Inodes   IUsed   IFree IUse% Mounted on
/dev/hda2 263296 16769 246527 53% /
/dev/hda3 393600 100095 293505 59% /usr

du (Disk Usage)

du zeigt den Speicherbedarf einzelner Dateien an.

# du -s /opt/*
20 /opt/fsuite
88556 /opt/gnome
157568 /opt/kde
184220 /opt/kde2
16 /opt/lost+found
31372 /opt/mozilla
4 /opt/nps
258728 /opt/office2
4 /opt/oracle
5012 /opt/www
...

Sonstige Dateisystem-Werkzeuge

mke2fs = legt Dateisysteme an
debugfs = Bearbeitet EXT2-Dateisysteme.
dumpe2fs = Gibt den Superblock und Block-Gruppeninformationen eines EXT2-Dateisystems auf die Standard-Ausgabe aus.
tune2fs = Ermöglicht wichtige Einstellungen von Dateisystem-Parametern des EXT2-Dateisystems.