Die Gründe, warum Linux keine Dateien erstellen kann: 1. Wenn eine Datei in einem bestimmten Verzeichnis erstellt wird, reicht der Speicherplatz nicht aus. Wenn die Festplatte voll ist, wird sie tatsächlich auf der diesem Verzeichnis entsprechenden Festplatte ausgeführt , es wird natürlich fehlschlagen. 2. Unzureichende Inodes; da eine Datei einem Inode entspricht, gibt es viele Blöcke, wenn sich zu viele kleine Dateien auf der Festplatte befinden, aber die Inodes wurden zugewiesen, das heißt, es ist noch viel Speicherplatz vorhanden. aber es kann nicht erstellt werden, weil die Datei erstellt wurde. Die Anwendung für die Inode-Nummer ist fehlgeschlagen.
Die Betriebsumgebung dieses Tutorials: Linux7.3-System, Dell G3-Computer.
Fehler beim Erstellen von Dateien
Fehler beim Erstellen von Dateien in Linux-Systemen kommen natürlich relativ häufig vor, dass Benutzer Dateien manuell erstellen. usw. müssen weiter schreiben, Datei erstellen, es kommt selten vor, dass ein echter Benutzer keine Datei erstellt. Als nächstes analysieren wir einige Gründe, warum die Erstellung fehlschlägt.
Gründe für das Scheitern der Dateierstellung:
1. Der dem aktuellen Verzeichnis entsprechende Speicherplatz reicht nicht aus
Gemäß der obigen Beschreibung wird beim Erstellen einer Datei in einem bestimmten Verzeichnis tatsächlich auf der Festplatte gearbeitet Wenn die Festplatte diesem Verzeichnis entspricht, schlägt die Erstellung natürlich fehl. Eine genauere Beschreibung lautet: Beim Erstellen einer Datei schlägt die Beantragung eines Blocks fehl. Sie können den folgenden Befehl zur Überprüfung verwenden:
# 查看当前目录所在磁盘的空间使用情况 df -h ./
2. Unzureichender Inode
Dies ist ein weiterer Grund, warum die Dateierstellung fehlschlägt. Da eine Datei einem Inode entspricht, gibt es bei zu vielen kleinen Dateien auf der Festplatte viele Blöcke, aber der Inode wurde zugewiesen, das heißt, es ist noch viel Speicherplatz vorhanden, aber er kann nicht erstellt werden Dies liegt daran, dass beim Erstellen einer Datei eine Inode-Nummer beantragt wird. Sie können den folgenden Befehl verwenden, um zu bestätigen, ob der Innode zugewiesen wurde.
# 查看当前目录所在磁盘的inode的使用情况 df -i ./
Erweitertes Wissen: mehrere Schlüsselbegriffe
Superblock: Um es in populäreren Worten zu erklären: Superblock verwaltet einen Festplattenbereich und alle Dateien sind Alle Vorgänge (Erstellung, Zugriff, Löschung) müssen über den Superblock erfolgen, der die Rolle des Datenträgerverwaltungs-Housekeepers übernimmt.
inode: Ein kleiner Festplattenbereich, der durch Festplattenformatierung vorab unterteilt ist. Im Allgemeinen ist jeder Inode 128 Byte groß. Er wird zum Aufzeichnen von Dateiberechtigungen, Attributen, belegten Blöcken und anderen Informationen verwendet. Jede Datei entspricht einem Inode. Die Anwendung und Rückgabe von Inodes wird vom Superblock verwaltet.
Block: Wo der Dateiinhalt tatsächlich gespeichert ist. Die Größe des Blocks ist je nach System auch 1 KB, 2 KB oder 4 KB groß Die Datei muss einen ganzzahligen Block belegen, der verbleibende Speicherplatz wird verschwendet. Beispiel: Jeder Block ist 4 KB groß. Wenn es eine Datei mit einer Größe von 1 KB gibt, muss ihr ein Block zugewiesen werden. Die restlichen 3 KB dieses Blocks können nicht von anderen Dateien verwendet werden. Man nennt es Festplattenfragmentierung. Eine andere Situation ist, dass eine Datei 10 KB groß ist, dann 3 Blöcke belegen muss, die tatsächliche Nutzungsrate 10/12 beträgt und die Nummern dieser drei Blöcke im der Datei entsprechenden Inode aufgezeichnet werden.
Mount-Punkt: Im Linux-System wird jede physische Festplatte in einem bestimmten Verzeichnis gemountet. Das Erstellen einer Datei in diesem Verzeichnis entspricht dem Schreiben von etwas auf diese physische Festplatte.
Laienhaft ausgedrückt: Eine physische Festplatte wird zunächst in einem Verzeichnis im Dateibaum bereitgestellt. Jeder Bereich verfügt über einen Superblock, der den Bereich vorab mit der Festplattenformatierung verwaltet. Es gibt eine bestimmte Anzahl nummerierter Inodes und Blöcke. Ein Inode entspricht einer Datei. Beim Erstellen einer neuen Datei müssen Sie zunächst eine Inode-Nummer beantragen und dann entsprechend der Dateigröße mehrere Blöcke beantragen , und notieren Sie die Attribute der Datei in den Inode-Berechtigungen, die belegte Blocknummer und schreiben Sie schließlich den tatsächlichen Inhalt der Datei in den zugewiesenen Block.
Verwandte Empfehlungen: „Linux-Video-Tutorial“
Das obige ist der detaillierte Inhalt vonWas sind die Gründe, warum die Dateierstellung unter Linux fehlschlägt?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!