Ln: Unterschied zwischen den Versionen
Zeile 97: | Zeile 97: | ||
<syntaxhighlight lang="bash" highlight="1" line> | <syntaxhighlight lang="bash" highlight="1" line> | ||
ls -l PFAD | ls -l PFAD | ||
lrwxrwxrwx 1 user user 8 Okt 15 10:31 SOFTLINK -> ZIEL | |||
-rw-r--r-- | -rw-r--r-- 2 user user 1049 Okt 15 10:31 HARDLINK | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Version vom 29. September 2024, 08:08 Uhr
ln (link) - Verknüpfungen erstellen
Beschreibung
Erzeugt links zwischen Dateien
- Verfügbarkeit
ln ist Teil der GNU CoreUtilities, die auf jedem GNU-Betriebssystem vorhanden sind
- Link-Typen
Syntax
ln [OPTION]… [-T] ZIEL LINKNAME
ln [OPTION]… ZIEL
ln [OPTION]… ZIEL… VERZEICHNIS
ln [OPTION]… -t VERZEICHNIS ZIEL…
- Einen Link (Verknüpfung) namens LINKNAME auf ZIEL erstellen
- Einen Link auf ZIEL im aktuellen Verzeichnis erstellen
- und
- Links zu jedem ZIEL in VERZEICHNIS erstellen
Standardmäßig werden harte Links erstellt, für symbolische Links ist die Option --symbolic anzugeben.
- In der Voreinstellung dürfen alle Ziele (Namen des neuen Links) nicht existieren.
- Beim Erzeugen von harten Links muss jedes ZIEL existieren.
- Bei symbolischen Links kann dagegen beliebiger Text stehen; bei späterer Auflösung wird ein relativer Link bezogen auf sein Elternverzeichnis interpretiert.
Optionen
Unix | GNU | Beschreibung |
---|---|---|
--backup[=STEUERUNG] | Eine Sicherungskopie von jeder vorhandenen Zieldatei erstellen | |
-b | Wie --backup, akzeptiert aber kein Argument | |
-d, -F | --directory | Dem Superuser den Versuch erlauben, harte Verknüpfungen für Verzeichnisse anzulegen (Hinweis: Aufgrund von Systembeschränkungen wird dies wahrscheinlich auch für den Superuser fehlschlagen) |
-f | --force | Vorhandene Zieldateien entfernen |
-i | --interactive | Abfrage, ob das Ziel entfernt werden soll |
-L | --logical | ZIELe dereferenzieren, die symbolische Links sind |
-n | --no-dereference | LINKNAME als normale Datei behandeln, falls er ein symbolischer Link auf ein Verzeichnis ist |
-P | --physical | Harte Links direkt auf symbolische Links anlegen |
-r | --relative | erstellt mit -s symbolische Links relativ zum Ort des Links. |
-s | --symbolic | erstellt symbolische Links statt harten Links. |
-S | --suffix=ENDUNG | überschreibt die übliche Endung für Sicherungskopien. |
-t | --target-directory=VERZEICHNIS | VERZEICHNIS angeben, in dem die Links erstellt werden sollen |
-T | --no-target-directory | LINKNAME immer als normale Datei behandeln |
-v | --verbose | Den Namen jeder verlinkten Datei ausgeben |
--help | zeigt Hilfeinformationen an und beendet das Programm. | |
--version | gibt Versionsinformationen aus und beendet das Programm. |
Die obligatorischen Argumente für Optionen sind für deren Kurz- und Langform gleich.
Versionssteuerung
Die Endung für Sicherheitskopien ist »~«, außer wenn sie mit --suffix oder SIMPLE_BACKUP_SUFFIX gesetzt wurde. Die Methode der Versionssteuerung kann mit der Option --backup oder der Umgebungsvariablen VERSION_CONTROL ausgewählt werden.
Versionssteuerung | Beschreibung |
---|---|
none, off | erstellt niemals Sicherheitskopien (selbst wenn --backup angegeben wurde). |
numbered, t | erstellt nummerierte Sicherheitskopien. |
existing, nil | erstellt nummerierte (»numbered«) Sicherheitskopien, wenn solche existieren, sonst einfache (»simple«). |
simple, never | erstellt immer einfache Sicherheitskopien. |
Durch die Verwendung von -s werden -L und -P ignoriert. Andernfalls steuert die zuletzt angegebene Option das Verhalten, wenn ein ZIEL ein symbolischer Link ist, mit der Standardeinstellung -P.
Parameter
Rückgabewert
Anwendung
Links auflisten
Softlinks haben den Buchstaben l im File Mode String
Man kann die Nummer an Hardlinks zu einer Datei an der zweiten Spalte sehen
ls -l PFAD
lrwxrwxrwx 1 user user 8 Okt 15 10:31 SOFTLINK -> ZIEL
-rw-r--r-- 2 user user 1049 Okt 15 10:31 HARDLINK
Informationen Datei anzeigen
$ stat HARDLINK
Datei: HARDLINK
Größe: 1049 Blöcke: 8 EA Block: 4096 reguläre Datei
Gerät: 802h/2050d Inode: 12853740 Verknüpfungen: '''2'''
Zugriff: (0644/-rw-r--r--) Uid: ( 1000/ user) Gid: ( 1000/ user)
Zugriff : 2020-11-05 13:53:23.065624397 +0100
Modifiziert: 2020-10-15 10:31:30.384742272 +0200
Geändert : 2020-11-05 13:52:52.985447984 +0100
Geburt : -
$ stat SOFTLINK
Datei: SOFTLINK -> ZIEL
Größe: 8 Blöcke: 0 EA Block: 4096 symbolische Verknüpfung
Gerät: 802h/2050d Inode: 12853741 Verknüpfungen: 1
Zugriff: (0777/lrwxrwxrwx) Uid: ( 1000/ user) Gid: ( 1000/ user)
Zugriff : 2020-11-05 09:51:44.570883691 +0100
Modifiziert: 2020-10-15 10:31:48.896869554 +0200
Geändert : 2020-10-15 10:31:48.896869554 +0200
Anwendung von ln
Die allgemeine Syntax für ln lautet
$ ln [OPTION]... ZIEL VERKNÜPFUNGSNAME
Man kann auch mehrere Dateien in ein Verzeichnis verlinken
$ ln [OPTION]... ZIELE... LINKVERZEICHNIS
Softlink
Symbolische Verknüpfungen werden Symlinks, Softlinks oder oft auch nur Verknüpfungen genannt.
- Ein Softlink referenziert über einen Dateisystenpfad.
- Verweist auf Dateien und Verzeichnisse.
- Zeigt ins leere, wenn das Ziel gelöscht wird.
$ '''ln -s Test.txt Verknüpfung_mit_Test.txt'''
Hardlink
- Ein Hardlink ist ein Eintrag im Dateisystem mit einem Namen, der auf den tatsächlichen Speicherplatz einer Datei zeigt.
- Ein Hardlink referenziert über eine inode.
- Verweist nur auf Dateien der gleichen Partition.
$ ln Test.txt Verknüpfung_mit_Test.txt
$ cp -l Test.txt Verknüpfung_mit_Test.txt
Anhang
Siehe auch
Dokumentation
Man-Pages
- LN(1)
Info-Pages
- info '(coreutils) ln invocation'
Links
Projekt
Weblinks
- https://de.wikipedia.org/wiki/Ln_(Unix)
- https://wiki.ubuntuusers.de/ln/
- https://www.howtoforge.de/anleitung/linux-ln-befehl-tutorial-fuer-anfaenger-5-beispiele/
- https://wiki.archlinux.de/title/Ln