Inodes und „No space left on device“
Ein Inode ist die Datenstruktur, die ein Unix-artiges Dateisystem verwendet, um Informationen über eine Datei zu speichern, wie etwa deren Besitzer, Berechtigungen, Größe und Speicherort der Daten. Jede Datei belegt einen Inode, und viele Dateisysteme haben eine feste Anzahl davon. Daher können Millionen winziger Dateien die Fehlermeldung „No space left on device“ verursachen, obwohl df -h noch freien Speicherplatz anzeigt.
1Anzeige der Auslastung
„df -i“ listet die gesamten, belegten und freien Inodes pro Dateisystem auf. „ls -i“ zeigt die Inode-Nummer einer Datei an, und „stat <file>“ zeigt die Inode-Details.
2Typische Ursachen
Sitzungs- oder Cache-Verzeichnisse von Webanwendungen, Mail-Warteschlangen, nicht rotierte kleine Log-Dateien und Build-Caches können Millionen von Dateien erzeugen.
3Das Verzeichnis finden
GNU du kann Inodes zählen: „du --inodes -x / | sort -n | tail“ listet die Verzeichnisse mit den meisten Einträgen auf.
Behebung von Inode-Erschöpfung
- Bestätigen:
df -i(IUse% nahe 100%). - Verzeichnis finden:
sudo du --inodes -x --max-depth=3 / | sort -n | tail -20 - Prüfen Sie, was die Dateien erstellt, bevor Sie etwas löschen.
- Entfernen Sie alte Dateien der Anwendung mit deren eigenem Werkzeug oder mit find, zum Beispiel:
find /path -type f -mtime +7 -deletenach einem Testlauf ohne -delete.
Vorsicht
- Führen Sie find immer zuerst ohne -delete aus und lesen Sie die Liste.
- Die Inode-Anzahl von ext4 ist bei der Erstellung des Dateisystems festgelegt.
Verwandte Artikel
- df (disk free)Wie man die Ausgabe von df liest, warum Use% bei normalen Benutzern 100% erreichen kann, bevor Avail null ist, und wie man Inodes mit df -i überprüft.
- Große und alte Dateien mit find findenWie man mit find große oder alte Dateien unter Linux auflistet, sie sicher in der Vorschau anzeigt und nur das löscht, was man überprüft hat.
- Festplattenbelegung mit du und ncduSo finden Sie mit du und dem interaktiven ncdu heraus, was eine Linux-Festplatte füllt, unter Verwendung von Optionen, die auf einem Dateisystem bleiben.
Quellen
Zuletzt geprüft: