Zum Inhalt springen

Hardlink: Unterschied zwischen den Versionen

Aus Foxwiki
Die 5 zuletzt angesehenen Seiten:  Popd » sudo » Kategorie:T2600G/L2/Multicast » Backup/Server/Präsentation » Hardlink
K Textersetzung - „line>“ durch „line copy>“
 
(14 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
'''Hardlink''' - (feste) Verknüpfung zwischen zwei Punkten
'''Hardlink''' - Verzeichniseintrag für eine existierende Datei


== Beschreibung ==
== Beschreibung ==
Bei einem Hardlink handelt es sich eigentlich nur um einen weiteren Verzeichniseintrag für eine existierende Datei
Ein ''Hardlink'' ist Verzeichniseintrag für eine existierende Datei
* Demzufolge belegt er auch keinen eigenen Inode und fast gar keinen Speicherplatz im Dateisystem
* (feste) Verknüpfung zwischen zwei Punkten
* Daraus ergeben sich völlig andere Eigenschaften im Vergleich zu einem symbolischen Link
* 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 17: Zeile 22:
* Das Kommando ls-l zeigt das Ergebnis der Aktion
* Das Kommando ls-l zeigt das Ergebnis der Aktion


<syntaxhighlight lang="bash" highlight="1-3" line>
<syntaxhighlight lang="bash" highlight="1-3" line copy>
ln file1 hardlink1
ln file1 hardlink1
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 30: 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 copy>
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 42: 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


Es wird also auch die ursprüngliche Datei als Link dargestellt
Es wird also auch die ursprüngliche Datei als Link dargestellt
<syntaxhighlight lang="bash" highlight="1" line>
<syntaxhighlight lang="bash" highlight="1" line copy>
stat hardlink1
stat hardlink1
  File: `hardlink1'
  File: `hardlink1'
Zeile 58: Zeile 57:
</syntaxhighlight>
</syntaxhighlight>


== Installation ==
<syntaxhighlight lang="bash" highlight="1" line>
</syntaxhighlight>
== Aufruf ==
<syntaxhighlight lang="bash" highlight="1" line>
</syntaxhighlight>
=== Optionen ===
{| class="wikitable sortable options gnu"
|-
! Unix !! GNU !! Parameter !! Beschreibung
|-
| -1 || --single || || Exit as soon as the first advertisement is received (default)
|-
|}
=== Parameter ===
=== Umgebungsvariablen ===
=== Exit-Status ===
== Anwendung ==
== Anwendung ==
<syntaxhighlight lang="bash" highlight="1" line>
<syntaxhighlight lang="bash" highlight="1" line copy>


</syntaxhighlight>
</syntaxhighlight>
=== Problembehebung ===
=== Problembehebung ===
== Konfiguration ==
 
=== Dateien ===
<noinclude>
<noinclude>
== Anhang ==
== Anhang ==
=== Siehe auch ===
=== Siehe auch ===
{{Special:PrefixIndex/{{BASEPAGENAME}}}}
{{Special:PrefixIndex/{{BASEPAGENAME}}/}}
==== Dokumentation ====
=== Dokumentation ===


===== Man-Page =====
; Man-Page
===== Info-Pages =====
;Info-Page
==== Links ====
=== Links ===
===== Projekt =====
==== Projekt ====
===== Weblinks =====
==== Weblinks ====


{{DEFAULTSORT:new}}
{{DEFAULTSORT:Hardlink}}
{{DISPLAYTITLE:new}}
{{DISPLAYTITLE:Hardlink}}


[[Kategorie:new]]
[[Kategorie:Hardlink]]


</noinclude>
</noinclude>

Aktuelle Version vom 11. Mai 2025, 13:46 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