Wie entferne ich mehrere Links zu demselben Verzeichnis?

268
Karl

Ich habe eine defekte lxd-Installation und möchte sie vollständig löschen und neu beginnen, aber es gibt ein Problem. / var / lib / lxd / devices / desktop enthält eine Reihe von Unterverzeichnissen, die mit Verzeichnissen an anderen Stellen im Dateisystem verknüpft sind (auch auf anderen Laufwerken), z

drwxr-xr-x 28 karl karl 4096 Apr 11 15:40 disk.shareName.home-karl drwxr-xr-x 4 nobody nogroup 4096 Apr 14 12:07 disk.thor.mnt-thor drwxr-xr-x 2 root root 4096 Mar 29 14:02 disk.usbdrive.mnt-usbdrive 

Wenn ich beispielsweise eine Datei aus disk.thor.mnt-thor lösche, wird sie auch aus / home / storage gelöscht (beide Verzeichnisse zeigen auf dieselbe Stelle). disk.usbdrive.mnt-usbdrive zeigt den gesamten Inhalt meines USB-Laufwerks an, das an / mnt / usbdrive angehängt ist. Beide Verzeichnisse zeigen den Inhalt und die Änderungen in einem Verzeichnis spiegeln sich im anderen.

Aber jetzt, wenn ich diese Verzeichnisse löschen möchte, habe ich ein Problem, weil ich nur diese Verzeichnisse unter lxd entfernen möchte, nicht die eigentlichen Verzeichnisse, auf die sie verweisen, und nicht deren Inhalt. Ich habe es versucht unlink, aber es funktioniert nicht bei Verzeichnissen.

2
Wenn es sich um Hardlinks handelt, entfernt `rm` den Link und der Linkreferenzzähler für das Ziel wird um eins verringert. tripleee vor 6 Jahren 0

1 Antwort auf die Frage

1
grawity

Versuchen umountSie es.

Mit der VFS-Schicht in Linux können Dateien und Verzeichnisse an einen anderen Speicherort gebunden werden. Das Ergebnis sieht zwar wie ein Hardlink aus, ist aber auf der Festplatte nicht vorhanden - Bind-Mounts befinden sich im Arbeitsspeicher, genau wie reguläre Mounts.

Diese Funktion bedeutet auch, dass ein einzelnes Dateisystem an mehreren Stellen gleichzeitig gemountet werden kann. Zum Beispiel /dev/sda1könnte das gleiche an /mnt/usbdrive und an montiert werden /var/lib/lxd/mnt-usbdrive.

Alle diese magischen Reittiere können durch Laufen findmntoder gesehen werden mount.

(Windows und FreeBSD haben auch ähnliche Funktionen, zB nullfs.)