Zum Inhalt springen

Hardlink: Unterschied zwischen den Versionen

Aus Foxwiki
Die 5 zuletzt angesehenen Seiten:  Spezial:Linkliste » Hardlink
Keine Bearbeitungszusammenfassung
K Textersetzung - „===== Weblinks =====“ durch „==== Weblinks ====“
 
(18 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
=== Hardlink ===
'''Hardlink''' - Verzeichniseintrag für eine existierende Datei
Bei einem Hardlink handelt es sich eigentlich nur um einen weiteren Verzeichniseintrag für eine existierende Datei
 
* Demzufolge belegt er auch keinen eigenen Inode und fast gar keinen Speicherplatz im Dateisystem
== Beschreibung ==
* Daraus ergeben sich völlig andere Eigenschaften im Vergleich zu einem symbolischen Link
Ein ''Hardlink'' ist Verzeichniseintrag für eine existierende Datei
* (feste) Verknüpfung zwischen zwei Punkten
* Keinen eigenen Inode
* belegt nahezu keinen Speicherplatz im Dateisystem
 
Daraus ergeben sich völlig andere Eigenschaften im Vergleich zu einem symbolischen Link
* Hardlinks können nicht auf Verzeichnisse angewandt werden, sondern nur auf Dateien
* Hardlinks können nicht auf Verzeichnisse angewandt werden, sondern nur auf Dateien
* Hardlinks können nicht partitionsübergreifend eingesetzt werden
* Hardlinks können nicht partitionsübergreifend eingesetzt werden
* Es gibt keine verwaisten bzw.  gebrochenen Hardlinks
* Es gibt keine verwaisten bzw.  gebrochenen Hardlinks
* Eine Datei wird gelöscht,wenn der letzte Hardlink zu dieser Datei gelöscht wird
* Eine Datei wird gelöscht, wenn der letzte Hardlink zu dieser Datei gelöscht wird
 
* Die Zieldatei und der Hardlink verwenden eine gemeinsame Zugriffssteuerungsliste (ACL)
* Die Zieldatei und der Hardlink verwenden eine gemeinsame Zugriffssteuerungsliste (ACL)
* Ein Hardlink ist im Nachhinein nicht mehr von seiner Zieldatei zu unterscheiden
* Ein Hardlink ist im Nachhinein nicht mehr von seiner Zieldatei zu unterscheiden


Zeile 19: Zeile 26:
ln file1 hardlink2
ln file1 hardlink2
ls -l
ls -l
total 80
drwxr-xr-x 2 root root 4096 Jan 2 19:21
drwxr-xr-x 24 root root 4096 Jan 2 17:55
  -rw-r--r-- 3 root root 22271 Jan 2 19:21 file1
  -rw-r--r-- 3 root root 22271 Jan 2 19:21 file1
  -rw-r--r-- 3 root root 22271 Jan 2 19:21 hardlink1
  -rw-r--r-- 3 root root 22271 Jan 2 19:21 hardlink1
Zeile 28: Zeile 32:


Die drei Dateien sind offensichtlich gleich groß und verfügen auch sonst über dieselben Eigenschaften
Die drei Dateien sind offensichtlich gleich groß und verfügen auch sonst über dieselben Eigenschaften
* Mit ls -li soll festgestellt werden, welche Inodes die Dateien jeweils belegen
* Mit ls -li soll festgestellt werden, welche [[Inode]]s die Dateien jeweils belegen


<syntaxhighlight lang="bash" highlight="1" line>
<syntaxhighlight lang="bash" highlight="1" line>
ls -li
ls -li
total 80
1896834 drwxr-xr-x 2 root root 4096 Jan 2 19:21
2 drwxr-xr-x 24 root root 4096 Jan 2 17:55
  1896921 -rw-r--r-- 3 root root 22271 Jan 2 19:21 file1
  1896921 -rw-r--r-- 3 root root 22271 Jan 2 19:21 file1
  1896921 -rw-r--r-- 3 root root 22271 Jan 2 19:21 hardlink1
  1896921 -rw-r--r-- 3 root root 22271 Jan 2 19:21 hardlink1
Zeile 40: Zeile 41:
</syntaxhighlight>
</syntaxhighlight>


Alle drei Dateien verwenden dieselben Inode
Alle drei Dateien verwenden dieselben [[Inode]]
* Wenn Sie das Kommando stat auf eine der drei Dateien anwenden, sehen Sie zwei interessante Details
* Wenn Sie das Kommando stat auf eine der drei Dateien anwenden, sehen Sie zwei interessante Details
* Erstens werden die Hardlinks als reguläre Dateien erkannt, und zweitens erkennt das Programm drei Links
* Erstens werden die Hardlinks als reguläre Dateien erkannt, und zweitens erkennt das Programm drei Links
Zeile 55: Zeile 56:
  Change: 2017-01-02 19:21:46.000000000 +0100
  Change: 2017-01-02 19:21:46.000000000 +0100
</syntaxhighlight>
</syntaxhighlight>
== Anwendung ==
<syntaxhighlight lang="bash" highlight="1" line>
</syntaxhighlight>
=== Problembehebung ===
<noinclude>
== Anhang ==
=== Siehe auch ===
{{Special:PrefixIndex/{{BASEPAGENAME}}/}}
=== Dokumentation ===
; Man-Page
;Info-Page
=== Links ===
==== Projekt ====
==== Weblinks ====
{{DEFAULTSORT:Hardlink}}
{{DISPLAYTITLE:Hardlink}}
[[Kategorie:Hardlink]]
</noinclude>

Aktuelle Version vom 22. März 2025, 00:48 Uhr

Hardlink - Verzeichniseintrag für eine existierende Datei

Beschreibung

Ein Hardlink ist Verzeichniseintrag für eine existierende Datei

  • (feste) Verknüpfung zwischen zwei Punkten
  • Keinen eigenen Inode
  • belegt nahezu keinen Speicherplatz im Dateisystem

Daraus ergeben sich völlig andere Eigenschaften im Vergleich zu einem symbolischen Link

  • Hardlinks können nicht auf Verzeichnisse angewandt werden, sondern nur auf Dateien
  • Hardlinks können nicht partitionsübergreifend eingesetzt werden
  • Es gibt keine verwaisten bzw.  gebrochenen Hardlinks
  • Eine Datei wird gelöscht, wenn der letzte Hardlink zu dieser Datei gelöscht wird
  • Die Zieldatei und der Hardlink verwenden eine gemeinsame Zugriffssteuerungsliste (ACL)
  • Ein Hardlink ist im Nachhinein nicht mehr von seiner Zieldatei zu unterscheiden

Wenn Sie das Kommando ln ohne Optionen verwenden, wird ein Hardlink erstellt

  • Die folgenden Kommandos demonstrieren die Eigenarten von Hardlinks
  • Zunächst werden zwei Hardlinks zu einer bestehenden Datei erstellt
  • Das Kommando ls-l zeigt das Ergebnis der Aktion
ln file1 hardlink1
ln file1 hardlink2
ls -l
 -rw-r--r-- 3 root root 22271 Jan 2 19:21 file1
 -rw-r--r-- 3 root root 22271 Jan 2 19:21 hardlink1
 -rw-r--r-- 3 root root 22271 Jan 2 19:21 hardlink2

Die drei Dateien sind offensichtlich gleich groß und verfügen auch sonst über dieselben Eigenschaften

  • Mit ls -li soll festgestellt werden, welche Inodes die Dateien jeweils belegen
ls -li
 1896921 -rw-r--r-- 3 root root 22271 Jan 2 19:21 file1
 1896921 -rw-r--r-- 3 root root 22271 Jan 2 19:21 hardlink1
 1896921 -rw-r--r-- 3 root root 22271 Jan 2 19:21 hardlink2

Alle drei Dateien verwenden dieselben Inode

  • Wenn Sie das Kommando stat auf eine der drei Dateien anwenden, sehen Sie zwei interessante Details
  • Erstens werden die Hardlinks als reguläre Dateien erkannt, und zweitens erkennt das Programm drei Links

Es wird also auch die ursprüngliche Datei als Link dargestellt

stat hardlink1
 File: `hardlink1'
 Size: 22271 Blocks: 48 IO Block: 4096 regular file
 Device: 302h/770d Inode: 1896921 Links: 3
 Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
 Access: 2017-01-02 19:21:30.000000000 +0100
 Modify: 2017-01-02 19:21:30.000000000 +0100
 Change: 2017-01-02 19:21:46.000000000 +0100

Anwendung

Problembehebung

Anhang

Siehe auch

Dokumentation

Man-Page
Info-Page

Links

Projekt

Weblinks