Benutzer-Werkzeuge

Webseiten-Werkzeuge


inode

Inodes gibt es in Unix-/Linux-Dateisystemen, um Dateien und Verzeichnisse zu verwalten. Sie sind ein zentrales Konzept, das beschreibt was eine Datei ist, unabhängig davon, wie sie heißt oder wo sie liegt. Es beinhaltet z.B

  • Dateigröße
  • Besitzer (UID, GID)
  • Rechte (rwx)
  • Zeitstempel (ctime, mtime, atime)
  • Link-Anzahl
  • Speicherort der Datenblöcke auf dem Datenträger

Der Inhalt eines Verzeichnisses (die Datenblöcke, auf die sein Inode zeigt) besteht aus Directory Entries (Verzeichniseinträgen).

Pfadauflösung

Angenommen der Benutzer admin legt eine Datei in seinem Homeverzeichnis ab.

/home/admin/test.txt

Der Startpunkt ist immer das Root-Verzeichnis /.Das Root-Verzeichnis selbst hat einen fest definierten Inode (z. B. immer Inode 2 auf ext-basierten Dateisystemen). Der Kernel kennt den Inode von / bereits, weil er beim Mounten geladen wurde. Dieser Inode ist ein Verzeichnis-Inode → er zeigt auf Datenblöcke, die sogenannte Directory Entries enthalten. Der Inhalt des Root-Verzeichnisses enthält Directory Entries wie:

NameInode
.2
..2
home128
bin543
etc900
usr2310

Hier findet der Kernel den Eintrag: home → 128. Wir befinden uns also in /home. Dieser Inode zeigt wiederum auf Datenblöcke, die enthalten:

NameInode
.128
..2
user5012

Hier findet der Kernel: user → 5012. Auch hier wieder das gleiche Prinzip.

NameInode
test.txt88001

Jetzt erst kennt das System die Metadaten der Datei test.txt und kann deren Datenblöcke lesen. Der Dateiname ist immer in einem DirectoryEntry gespeichert, nicht im Inode.

inode.txt · Zuletzt geändert: 2025/11/11 20:18 von admin