Windows 7: Hardlink, symbolischer Link und Junction [duplizieren]

Antworten:

30

Der einfachste Weg für die meisten Menschen, einen symbolischen (oder weichen) Link zu verstehen, besteht darin, ihn sich als Windows-Verknüpfung vorzustellen.

Wenn Sie eine symbolische Verknüpfung zu einer Datei herstellen, sucht Windows beim Öffnen die Originaldatei im Dateisystemindex und öffnet sie dann. Sie können sich den symbolischen Link als Wegweiser zur Originaldatei vorstellen.

Ein fester Link ist ein zusätzlicher Eintrag im Dateisystemindex, der auf denselben Speicherort auf der Festplatte verweist wie der Name der ursprünglichen Datei. Stellen Sie sich den ursprünglichen Namen und die feste Verbindung als zwei Türen in denselben Raum vor.

Eine Junction ist eine symbolische Verknüpfung zu einem Ordner (ich denke, dies ist ein Kater aus früheren Windows-Versionen und veraltet - ich nehme an, aber ich habe nicht überprüft, dass Sie jetzt nur feste Verknüpfungen verwenden können).

Neal
quelle
Sollte aber eine −1 für »  hard link to a folder  « bekommen.
Joey
Ups, ja es sind symbolische nicht harte Links, ich habe das entsprechend geändert. Ich sehe, dass der neue Befehl mklink das Erstellen von Junctions sowie Hard- und Soft-Links weiterhin unterstützt, aber keinen Grund für die Verwendung einer Junction anstelle eines Links erkennen kann.
Neal
Eigentlich ist die Dokumentation sagt , dass Hard - Links können in einen Ordner angewandt werden, es ist nur eine Frage der Zeit , bis jemand Zahlen heraus , wie es zu tun.
Hallo71
10
Junctions sind nicht veraltet und feste Verknüpfungen können keine Junctions ersetzen, da eine feste Verknüpfung nur auf ein Ziel auf derselben Partition (Laufwerk) verweisen kann, eine Junction auf einer Partition jedoch auf ein Ziel auf einer anderen Partition. Ich fand die Beschreibungen in diesem Beitrag sehr nützlich.
Orad
1
Wann würden Sie sich dafür entscheiden, einen festen Link über einen symbolischen Link zu verwenden und umgekehrt?
Niko Bellic
11

Directory Junction ist "Symlink to Directory", sodass Sie "Zugriffspunkte" für Ordner erstellen können, die seit NTFS 5.0 (Windows 2000) verfügbar sind. Directory Junction ist KEINE "feste Verknüpfung zu einem Ordner", da Junctions auf nicht vorhandene Verzeichnisse verweisen können. Directory und seine Junctions können sich auf verschiedenen NTFS-Partitionen befinden, jedoch nicht über LAN. Administratoren ohne erhöhten Rechten und Benutzer können Junctions erstellen.

NTFS In Windows Vista wurde NTFS eine symbolische Verknüpfung hinzugefügt. Ein symbolischer Link kann auf eine Datei oder ein Verzeichnis verweisen (vergleiche mit Junctions). Mit ihnen können Sie "Zugangspunkte" für Dateien und Ordner auf verschiedenen NTFS-Partitionen UND über LAN erstellen. "Die Standardsicherheitseinstellungen in Windows Vista verhindern, dass Administratoren ohne Administratorberechtigung und alle Nicht-Administratoren symbolische Links erstellen."

"Symbolischer Link zum Verzeichnis" vs "Directory Junction" - nach meiner Erfahrung funktionieren einige (viele?) Apps nicht richtig mit symbolischen Links, aber sie eignen sich gut für Junctions, z. B. Total Commander und Windows File Sharing (für LAN). Wenn Sie ein Verzeichnis für symlink freigeben, können LAN-Benutzer es nicht durchlaufen, aber für Junctions. Nach einer qualitativ hochwertigen Sache in Win2k hat MS einige Dinge in Vista implementiert ...

Hardlinks können nur auf Dateien in derselben Partition verweisen. Es gibt absolut keinen Unterschied zwischen der ersten Dateiinstanz und anderen Hardlinks auf dieselbe Datei. Wenn Sie einen festen Link löschen (erste oder andere Instanz), bleibt die Datei bestehen, es sei denn, der letzte feste Link wird gelöscht.

Verknüpfungen und symbolische Links können "defekt" sein - wenn Sie das Ziel umbenennen / verschieben, zeigen sie auf ein nicht vorhandenes Ziel. In solchen Fällen müssen Sie sie aktualisieren. Hardlinked-Dateien können jedoch umbenannt / verschoben werden, und alle Hardlinks sind weiterhin dieselbe Datei, nur mit unterschiedlichen Namen.

Nishi
quelle
± 1 hier, +1 für den korrekten Hinweis, dass eine Verzeichnisverknüpfung kein fester Link ist, −1 für den dritten Absatz, der bergab geht. (Für das Protokoll: Far kann Verzeichnissymlinks problemlos durchlaufen; vielleicht verwenden Sie nur ein defektes OFM :-).)
Joey
3
Hinweis zum Hinzufügen: Feste Verknüpfungen können auf Dateien auf demselben Volume verweisen, das nicht mit einer Partition identisch ist (eine Partition ist ein Abschnitt eines einzelnen Laufwerks, ein Volume kann viele dieser und sogar mehrere Laufwerke umfassen; ein Volume ist das, was Das Dateisystem ist eingeschaltet ( keine Partition).
Joey