Ich habe Hardlinks, wie hier beschrieben , verwendet, um meine wichtigen Ordner mit meiner Dropbox zu verknüpfen. Ein sehr nützlicher Trick zum Sichern, ohne Ihre bevorzugte Verzeichnisstruktur durcheinander zu bringen.
Nach meinem Update der High Sierra waren alle Hardlinks so beschädigt, dass alle Dateien verloren gingen.
Dies hinterlässt bei mir ein Problem. Wie sichere ich ausgewählte Ordner von meiner Festplatte über Dropbox, ohne meine ursprüngliche Dateiorganisation zu ändern, ohne diesmal alle meine Informationen zu verlieren? Unterstützt High Sierra Hardlinks? Es scheint nicht... was ist in einem solchen Fall zu tun?
aktualisieren
Sowohl Dropbox als auch OneDrive müssen also Dateien in einem dedizierten Ordner ablegen. Es scheint, als wären harte Links keine Option mehr. In diesem Fall sollte ich wohl zu einem dedizierten Dienst wechseln, der es mir erlaubt, vorhandene Ordner in die Sicherung einzuchecken?
Ich habe Dropbox erfolgreich mit Ordnern "außerhalb des Stammverzeichnisses" unter Verwendung von Symlinks verwendet:
BEARBEITEN: Wie @krim in den Kommentaren unten erwähnt, hat Dropbox diese Problemumgehung leider Ende 2019 eingestellt 😿😭
Die von Ihnen beschriebene Methode beinhaltet die Installation eines ln-Befehls eines Drittanbieters, mit dem Sie den Kernel auffordern können, einen festen Link für ein Verzeichnis zu erstellen.
Der ln-Befehl von coreutils führt am Ende zur Ausführung der linkat()-Funktion im Darwin-Kernel, wo der Quellcode den folgenden Kommentar enthält:
/*
* Normally, linking to directories is not supported.
* However, some file systems may have limited support.
*/
Es wird daher generell nicht empfohlen, Hardlinks zu Verzeichnissen anzulegen.
In Bezug auf ein Upgrade auf High Sierra wird das Dateisystem Ihres Systems normalerweise von HFS+ (das diese Hardlinks in einigen Fällen unterstützt) in APFS (das keine Verzeichnis-Hardlinks unterstützt) konvertiert. Daher haben Sie nach der Konvertierung keine Hardlinks.
Siehe die Dokumentation von Apple zu diesem Thema hier:
Vor allem der folgende Absatz:
Feste Verzeichnislinks werden vom Apple File System nicht unterstützt. Alle festen Verzeichnislinks werden in symbolische Links oder Aliase konvertiert, wenn Sie unter macOS von HFS+- in APFS-Volume-Formate konvertieren.
Das Konvertierungsprogramm soll diese Hard-Links in symbolische Links (Soft-Links) umwandeln. Die symbolischen Links zeigen auf neue Einträge, die in /.HFS+ Private Directory Data/ erstellt wurden.
Es scheint jedoch, dass bei der Konvertierung ein Fehler aufgetreten ist, da Sie Dateien verloren haben. Dies kann daran liegen, dass fest verknüpfte Verzeichnisse selten verwendet werden und nicht mit den standardmäßig von Apple gelieferten Tools erstellt werden können.
Daher denke ich, dass Sie mit Radar einen Fehlerbericht bei Apple einreichen sollten.
.
und ..
arbeitet man dann mit APFS? Sie sind nur harte Links zum entsprechenden Verzeichnis und ls -i
zeigen wie erwartet dieselben Inode-Nummern..
zeigt immer auf das aktuelle Verzeichnis, es handelt sich also nicht um Inode-Informationen, die separat auf der Festplatte gespeichert werden. ..
zeigt immer auf das übergeordnete Verzeichnis, ist jedoch nicht als feste Linkstruktur auf der Festplatte implementiert. Stattdessen hat jeder Inode ein spezielles Feld, das parent_id
mit einem Inode-Zeiger auf das übergeordnete Verzeichnis benannt ist. Tatsächliche Hardlinks werden in Geschwisterstrukturen auf der Platte gespeichert.Sie können auch das Gegenteil tun: Verschieben Sie Ihre Ordner in den Dropbox-Ordner und erstellen Sie dann Symlinks zu den gewünschten Speicherorten.
Beispiel :
mv ~/Documents/cats ~/Dropbox/cats
ln -s ~/Dropbox/cats ~/Documents/cats
Passierte über diesen Beitrag, als ich versuchte, einen Weg zu finden, das Löschen von Hardlinks zu automatisieren. Dachte, ich gebe meinen Senf dazu.
Ich benutze Sugarsync seit etwa 5 Jahren, um genau das Problem zu vermeiden, das Sie beschreiben. Es sichert nur meine Dateien in ihrer ursprünglichen Verzeichnisstruktur. Es hat gut funktioniert.
mmmmmm
Matt