Das Erstellen von hartverknüpften Verknüpfungen mit dem ln-Befehl
In diesem Schritt wirst du lernen, wie hartverknüpfte Verknüpfungen mit dem ln
-Befehl erstellt werden.
Zunächst erstellen wir eine Beispieldatei, die wir für das Erstellen von hartverknüpften Verknüpfungen verwenden werden:
touch file1.txt
echo "This is the original file." > file1.txt
Jetzt erstellen wir eine hartverknüpfte Verknüpfung zu file1.txt
mit dem ln
-Befehl:
ln file1.txt file1_hardlink.txt
Der ln
-Befehl ohne zusätzliche Optionen erstellt eine hartverknüpfte Verknüpfung. Dies bedeutet, dass file1_hardlink.txt
und file1.txt
jetzt die gleiche Inode (Dateimetaangaben) und den gleichen physischen Speicherort teilen. Jede Änderung, die an einer Datei vorgenommen wird, wird in der anderen widergespiegelt.
Lassen Sie uns überprüfen, ob die hartverknüpfte Verknüpfung korrekt erstellt wurde:
ls -l file1.txt file1_hardlink.txt
Beispielausgabe:
-rw-r--r-- 2 labex labex 25 Apr 12 12:34 file1.txt
-rw-r--r-- 2 labex labex 25 Apr 12 12:34 file1_hardlink.txt
Beachten Sie, dass beide Dateien die gleiche Inodenummer haben (die "2" in der zweiten Spalte), was darauf hindeutet, dass es sich um hartverknüpfte Verknüpfungen zur selben Datei handelt.
Jetzt machen wir eine Änderung an der ursprünglichen Datei und sehen, wie sich dies auf die hartverknüpfte Verknüpfung auswirkt:
echo "This is an updated file." > file1.txt
cat file1.txt file1_hardlink.txt
Beispielausgabe:
This is an updated file.
This is an updated file.
Wie Sie sehen können, werden die Änderungen, die an file1.txt
vorgenommen wurden, in der hartverknüpften Verknüpfung file1_hardlink.txt
widergespiegelt.
Hartverknüpfte Verknüpfungen sind nützlich, wenn Sie mehrere Verweise auf die gleiche Datei erstellen möchten, ohne zusätzlichen Speicherplatz zu verbrauchen. Denken Sie jedoch daran, dass hartverknüpfte Verknüpfungen nicht über Dateisystemgrenzen hinausgehen können und dass sie für Verzeichnisse nicht erstellt werden können.