Linux df-Befehl: Berichterstattung über den Festplattenspeicherplatz

LinuxLinuxBeginner
Jetzt üben

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

Einführung

In diesem Lab werden Sie den Befehl df erkunden, ein wichtiges Werkzeug zur Überwachung der Festplattennutzung auf Linux-Systemen. Sie übernehmen die Rolle eines Systemadministrators, der einen stark frequentierten Webserver verwaltet, und verwenden df, um die Festplattennutzung zu analysieren, potenzielle Speicherprobleme zu identifizieren und die reibungslose Funktion des Servers sicherzustellen. Dieses Lab ist für Anfänger konzipiert, also keine Sorge, wenn Sie neu in der Welt von Linux sind - wir werden Sie Schritt für Schritt begleiten.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL linux(("Linux")) -.-> linux/SystemInformationandMonitoringGroup(["System Information and Monitoring"]) linux/SystemInformationandMonitoringGroup -.-> linux/df("Disk Space Reporting") subgraph Lab Skills linux/df -.-> lab-219188{{"Linux df-Befehl: Berichterstattung über den Festplattenspeicherplatz"}} end

Grundlagen des df-Befehls verstehen

Als Systemadministratorin oder -administrator ist Ihre erste Aufgabe, einen Überblick über die Festplattennutzung auf Ihrem Webserver zu erhalten. Der df-Befehl ohne zusätzliche Optionen bietet einen schnellen Überblick über alle eingebundenen Dateisysteme.

Zunächst wechseln wir in das Projektverzeichnis:

cd ~/project

Jetzt führen wir den grundlegenden df-Befehl aus:

df

Tipp: Aufgrund dynamischer Änderungen im virtuellen Maschinen-Speicher kann die Ausgabe des df-Befehls inkonsistent sein. Dieses Problem kann ignoriert werden.

Sie sollten eine Ausgabe ähnlich der folgenden sehen:

Filesystem     1K-blocks     Used Available Use% Mounted on
overlay         20971520  1314600  19656920   7% /
tmpfs              65536        0     65536   0% /dev
tmpfs            4068320        0   4068320   0% /sys/fs/cgroup
shm                65536        0     65536   0% /dev/shm
/dev/vdb       104806400 17442788  87363612  17% /etc/hosts
tmpfs             102400    51200     51200  50% /mnt/ramdisk

Lassen Sie uns diese Ausgabe analysieren:

  • Filesystem: Diese Spalte zeigt den Namen des Geräts oder der Partition an.
  • 1K-blocks: Hier wird die Gesamtgröße des Dateisystems in 1-Kilobyte-Blöcken angezeigt.
  • Used: Dies gibt an, wie viele 1-Kilobyte-Blöcke verwendet werden.
  • Available: Hier wird angezeigt, wie viele 1-Kilobyte-Blöcke verfügbar sind.
  • Use%: Dies zeigt den Prozentsatz des verwendeten Dateisystems an.
  • Mounted on: Hier wird angezeigt, wo im Verzeichnisbaum das Dateisystem eingebunden ist.

Beachten Sie das overlay-Dateisystem, das häufig in containerisierten Umgebungen verwendet wird. Das Gerät /dev/vdb ist wahrscheinlich eine virtuelle Festplatte, und wir können ein tmpfs-Dateisystem sehen, das unter /mnt/ramdisk eingebunden ist. Dies ist ein auf RAM basierendes Dateisystem.

Die Ausgabe von df für Menschen lesbar machen

Die Standardausgabe von df zeigt die Größen in 1-Kilobyte-Blöcken an, was es schwierig machen kann, die Werte schnell zu interpretieren. Stellen Sie sich vor, Sie müssen herausfinden, wie viele Gigabyte 20640796 1-Kilobyte-Blöcke sind! Glücklicherweise können wir die Option -h (für "human-readable", deutsch: für Menschen lesbar) verwenden, um die Ausgabe leichter verständlich zu machen.

Führen Sie den folgenden Befehl aus:

df -h

Sie sollten eine Ausgabe ähnlich der folgenden sehen:

Filesystem      Size  Used Avail Use% Mounted on
overlay          20G  1.3G   19G   7% /
tmpfs            64M     0   64M   0% /dev
tmpfs           3.9G     0  3.9G   0% /sys/fs/cgroup
shm              64M     0   64M   0% /dev/shm
/dev/vdb        100G   17G   84G  17% /etc/hosts
tmpfs           100M   50M   50M  50% /mnt/ramdisk

Beachten Sie, wie die Größen jetzt in GB und MB angegeben sind. Dies ist auf einen Blick viel leichter zu verstehen. Beispielsweise können wir schnell erkennen, dass unser Hauptdateisystem (overlay) eine Größe von 20 GB hat, wobei nur 1,3 GB verwendet werden und 19 GB verfügbar sind.

Anzeige der Dateisystemtypen

Als Systemadministrator ist es wichtig zu wissen, welche Arten von Dateisystemen auf Ihrem Server vorhanden sind. Unterschiedliche Dateisystemtypen haben verschiedene Eigenschaften und Leistungscharakteristika. Die Option -T ermöglicht es Ihnen, diese Informationen anzuzeigen.

Führen Sie den folgenden Befehl aus:

df -T

Sie sollten eine Ausgabe ähnlich der folgenden sehen:

Filesystem     Type    1K-blocks     Used Available Use% Mounted on
overlay        overlay  20971520  1314600  19656920   7% /
tmpfs          tmpfs       65536        0     65536   0% /dev
tmpfs          tmpfs     4068320        0   4068320   0% /sys/fs/cgroup
shm            tmpfs       65536        0     65536   0% /dev/shm
/dev/vdb       xfs     104806400 17442728  87363672  17% /etc/hosts
tmpfs          tmpfs      102400    51200     51200  50% /mnt/ramdisk

Diese Ausgabe enthält eine neue Spalte, Type, die den Dateisystemtyp für jedes eingebundene Dateisystem anzeigt. Schauen wir uns die angezeigten Typen an:

  • overlay: Dies ist ein Typ von Union-Dateisystem, das häufig in containerisierten Umgebungen verwendet wird.
  • tmpfs: Dies ist ein temporäres Dateisystem, das im Arbeitsspeicher und/oder in der Swap-Partition gespeichert wird.
  • xfs: Dies ist ein leistungsstarkes Journalling-Dateisystem, das hier für die Einbindung von /etc/hosts verwendet wird.

Das Verständnis von Dateisystemtypen kann Ihnen helfen, Probleme zu beheben und die Leistung Ihres Systems zu optimieren.

Analyse der Inode-Nutzung

Unter Linux sind Inodes Datenstrukturen, die wichtige Informationen über Dateien speichern, wie z. B. ihre Berechtigungen, den Eigentümer und ihren Speicherort auf der Festplatte. Jede Datei auf Ihrem System verwendet einen Inode. Interessanterweise kann es passieren, dass Sie Ihre Inodes aufbrauchen, auch wenn noch viel Speicherplatz auf der Festplatte verfügbar ist. Dies würde es Ihnen verhindern, neue Dateien zu erstellen. Aus diesem Grund ist es wichtig, die Inode-Nutzung zu überwachen.

Lassen Sie uns die Inode-Nutzung mit der Option -i überprüfen:

df -i

Sie sollten eine Ausgabe ähnlich der folgenden sehen:

Filesystem       Inodes  IUsed    IFree IUse% Mounted on
overlay        52428800 539001 51889799    2% /
tmpfs           1017080    206  1016874    1% /dev
tmpfs           1017080     17  1017063    1% /sys/fs/cgroup
shm             1017080      1  1017079    1% /dev/shm
/dev/vdb       52428800 539001 51889799    2% /etc/hosts
tmpfs           1017080      2  1017078    1% /mnt/ramdisk

Lassen Sie uns diese Ausgabe analysieren:

  • Inodes: Die Gesamtzahl der Inodes für das Dateisystem
  • IUsed: Die Anzahl der derzeit verwendeten Inodes
  • IFree: Die Anzahl der freien Inodes
  • IUse%: Der Prozentsatz der verwendeten Inodes

In diesem Beispiel können wir sehen, dass unser Hauptdateisystem (overlay) nur 2 % seiner verfügbaren Inodes nutzt. Das ist gut – es bedeutet, dass wir weit davon entfernt sind, unsere Inodes aufzubrauchen, was es uns verhindern würde, neue Dateien zu erstellen, auch wenn noch Speicherplatz auf der Festplatte verfügbar wäre.

Kombination von Optionen für eine umfassende Analyse

Nachdem wir die einzelnen Optionen kennengelernt haben, kombinieren wir sie nun, um einen umfassenderen Überblick über die Speichersituation auf unserem Server zu erhalten. Wir können mehrere Optionen zusammen verwenden, um alle benötigten Informationen mit einem einzigen Befehl zu erhalten.

Führen Sie den folgenden Befehl aus:

df -hT

Dieser Befehl kombiniert die Option für die menschenlesbare Ausgabe (-h) und die Option zur Anzeige des Dateisystemtyps (-T).

Sie sollten eine Ausgabe ähnlich der folgenden sehen:

Filesystem     Type     Size  Used Avail Use% Mounted on
overlay        overlay   20G  1.3G   19G   7% /
tmpfs          tmpfs     64M     0   64M   0% /dev
tmpfs          tmpfs    3.9G     0  3.9G   0% /sys/fs/cgroup
shm            tmpfs     64M     0   64M   0% /dev/shm
/dev/vdb       xfs      100G   17G   84G  17% /etc/hosts
tmpfs          tmpfs    100M   50M   50M  50% /mnt/ramdisk

Diese Ausgabe bietet einen umfassenden Überblick über Ihre Dateisysteme, einschließlich ihrer Typen und der in menschenlesbarer Form angegebenen Größen. Es ist eine ausgezeichnete Möglichkeit, schnell einen detaillierten Überblick über die Speichersituation Ihres Systems zu erhalten.

Fokussieren auf ein bestimmtes Dateisystem

Als Systemadministrator müssen Sie möglicherweise häufig den Status eines bestimmten Dateisystems überprüfen. Beispielsweise möchten Sie möglicherweise schnell den verfügbaren Speicherplatz auf dem Root-Dateisystem (Wurzel-Dateisystem) überprüfen. Dies können Sie tun, indem Sie nach dem df-Befehl den Einbindungspunkt (Mount Point) angeben.

Lassen Sie uns uns auf das Root-Dateisystem konzentrieren. Führen Sie den folgenden Befehl aus:

df -h /

Sie sollten eine Ausgabe ähnlich der folgenden sehen:

Filesystem      Size  Used Avail Use% Mounted on
overlay          20G  1.3G   19G   7% /

Dieser Befehl gibt Ihnen einen schnellen Überblick über die Speicherplatznutzung auf dem Root-Dateisystem. Dies ist besonders nützlich, wenn Sie nur an einem bestimmten Dateisystem interessiert sind und keine Informationen über alle anderen benötigen.

Überprüfen des verfügbaren Speicherplatzes für Benutzer-Homedirektories

Als Teil Ihrer Server-Verwaltungsaufgaben müssen Sie sicherstellen, dass Benutzer genügend Speicherplatz in ihren Homedirektories haben. Auf vielen Systemen befinden sich die Benutzer-Homedirektories im Verzeichnis /home. Lassen Sie uns den verfügbaren Speicherplatz im Verzeichnis /home überprüfen.

Führen Sie den folgenden Befehl aus:

df -h /home

Sie könnten eine Ausgabe ähnlich der folgenden sehen:

Filesystem      Size  Used Avail Use% Mounted on
overlay          20G  1.3G   19G   7% /

Dies zeigt, dass das Verzeichnis /home auf demselben Dateisystem wie das Root-Verzeichnis (/) liegt. In diesem Fall können wir sehen, dass für die Benutzer-Homedirektories viel Speicherplatz verfügbar ist (19 GB).

Wenn Sie feststellen, dass das Dateisystem voll wird (ein hoher Wert bei Use%), müssen Sie möglicherweise untersuchen, welche Benutzer am meisten Speicherplatz nutzen, oder in Betracht ziehen, die Speicherkapazität zu erhöhen.

Ausschluss bestimmter Dateisystemtypen

Manchmal möchten Sie möglicherweise bestimmte Dateisystemtypen aus der df-Ausgabe ausschließen. Beispielsweise möchten Sie möglicherweise temporäre Dateisysteme ausschließen, die im Arbeitsspeicher gespeichert sind und keine physische Festplattennutzung darstellen. Dies können Sie mit der Option -x tun.

Führen Sie den folgenden Befehl aus, um tmpfs-Dateisysteme auszuschließen:

df -h -x tmpfs

Sie sollten eine Ausgabe ähnlich der folgenden sehen:

Filesystem      Size  Used Avail Use% Mounted on
overlay          20G  1.3G   19G   7% /
/dev/vdb        100G   17G   84G  17% /etc/hosts

Beachten Sie, dass die tmpfs-Dateisysteme nicht mehr in der Ausgabe aufgeführt sind. Dies kann nützlich sein, wenn Sie nur an der physischen Festplattennutzung interessiert sind und virtuelle Dateisysteme herausfiltern möchten.

Anzeige einer Gesamtsumme

Als abschließenden Überblick lassen wir uns eine Gesamtsumme aller Dateisysteme anzeigen. Dies können wir mit der Option --total tun. Dies ist besonders nützlich, wenn Sie die Gesamtfestplattennutzung über alle Dateisysteme hinweg sehen möchten.

Führen Sie den folgenden Befehl aus:

df -h --total

Sie sollten eine Ausgabe ähnlich der folgenden sehen:

Filesystem      Size  Used Avail Use% Mounted on
overlay          20G  1.3G   19G   7% /
tmpfs            64M     0   64M   0% /dev
tmpfs           3.9G     0  3.9G   0% /sys/fs/cgroup
shm              64M     0   64M   0% /dev/shm
/dev/vdb        100G   17G   84G  17% /etc/hosts
tmpfs           100M   50M   50M  50% /mnt/ramdisk
total           125G   18G  107G  15% -

Dies bietet eine Gesamtsumme der Festplattennutzung über alle Dateisysteme hinweg. Die letzte Zeile zeigt die Summe über alle Dateisysteme an und gibt an, dass insgesamt 18 GB von 125 GB genutzt werden, was etwa 15 % des verfügbaren Speicherplatzes entspricht.

Zusammenfassung

In diesem Lab haben Sie gelernt, wie Sie den df-Befehl verwenden können, um die Festplattennutzung auf einem Linux-System zu überwachen und zu analysieren. Sie haben verschiedene Optionen des df-Befehls erkundet, darunter:

  • Grundlegende Verwendung von df
  • Machbarkeit der Ausgabe für Menschen lesbar mit -h
  • Anzeige der Dateisystemtypen mit -T
  • Analyse der Inode-Nutzung mit -i
  • Kombination von Optionen für eine umfassende Analyse
  • Fokussierung auf bestimmte Dateisysteme
  • Ausschluss bestimmter Dateisystemtypen mit -x
  • Anzeige einer Gesamtsumme mit --total

Diese Fähigkeiten sind für eine effektive Systemadministration und die Gewährleistung einer optimalen Leistung Ihrer Linux-Server von entscheidender Bedeutung. Wenn Sie Ihre Reise in der Systemadministration fortsetzen, werden Sie feststellen, dass der df-Befehl ein unschätzbares Werkzeug in Ihrem Arsenal ist.

Zusätzliche df-Optionen, die in diesem Lab nicht behandelt wurden, sind:

  • -a: Zeige alle Dateisysteme an, einschließlich Pseudo-, Duplikat- und nicht zugänglichen Dateisystemen
  • -k: Zeige Größen in Kilobyte an (Standard)
  • -m: Zeige Größen in Megabyte an
  • -P: Verwende das POSIX-Ausgabeformat
  • --sync: Rufe sync auf, bevor die Nutzungsinformationen abgerufen werden
  • -t: Begrenze die Auflistung auf Dateisysteme eines bestimmten Typs

Denken Sie daran, dass df zwar leistungsstark ist, aber nur eines von vielen Werkzeugen zur Überwachung der Festplattennutzung ist. Wenn Sie in Ihrer Linux-Reise voranschreiten, möchten Sie möglicherweise andere Befehle wie du (Disk Usage), ncdu (NCurses Disk Usage) und verschiedene Systemüberwachungstools erkunden.