
Ich habe gerade angefangen, Mac OS X zu verwenden. Im Stammverzeichnis /
gibt es einen Ordner mit dem Namen Volumes/
.
Wenn ich in das Verzeichnis gehe Volumes/
, gibt es ein Verzeichnis mit dem Namen Macintosh HD/
. Wenn ich in das Verzeichnis gehe Macintosh HD/
, gelange ich zurück zum Stammverzeichnis und kann Volumes/
erneut in das Verzeichnis gehen. Wenn ich dies ein paar Mal mache und das Verzeichnis, in dem ich mich befinde, mit pwd überprüfe, sehe ich, dass ich mich in einem Verzeichnis mit dem Namen befinde /Volumes/Macintosh/Volumes/Macintosh/Volumes/Macintosh
.
Ich verstehe die Logik dahinter nicht. Kann das jemand erklären?
Antwort1
Zunächst müssen Sie verstehen, dass das /Volumes/
Verzeichnis der Ort ist, an demalle gemounteten Volumesauf Ihrem Mac OS X-System wird natürlich angezeigt. Und der Grund, warum Sie dieses Verhalten sehen, ist, dass Macintosh/
es sich nur um einen symbolischen Link zu /
(root) auf Ihrem System handelt. Dies geschieht, damit /Volumes
Sie zusätzlich zum /
(root)-Zugriff auf dieses Volume weiterhin benannten Zugriff auf dieses Volume haben.
Wenn Sie beispielsweise in das Terminal Ihres Systems gehen cd /Volumes
und dann Folgendes eingeben, ls -la
sehen Sie möglicherweise etwas, das so aussieht:
drwxrwxrwt@ 7 root admin 238 Sep 13 23:55 .
drwxr-xr-x 29 root wheel 1054 Sep 13 01:43 ..
lrwxr-xr-x 1 root admin 1 Sep 13 16:42 Macintosh -> /
Ein symbolischer Link ist grundsätzlich wie ein Alias im Finder; auf Dateisystemebene ist ein symbolischer Link jedoch das, was ein „Alias“ ist.
Warum Sie das sehen, /Volumes/Macintosh/Volumes/Macintosh/Volumes/Macintosh
liegt daran pwd
, dass das Dateisystem Ihren Pfad interpretiert. Ja, das kann seltsam und verwirrend erscheinen, aber lassen Sie sich nicht verwirren. Das einzige gemountete Volume darunter, /Volumes/
das sich so verhält, ist das Root- /
Volume () Ihres Systems. Wenn Sie andere Volumes mounten, werden diese angezeigt /Volumes/
und es kommt nicht zu einer solchen Schleife, da es sich um tatsächlich gemountete Volumes und nicht um symbolische Links handelt.
Was nun das „Warum“ dieses verschachtelten symbolischen Link-/Verzeichnisverhaltens betrifft, ist dies keine leicht zu beantwortende Frage. Aber im Grunde verhalten sich alle Linux-/Unix-Systeme so. Unddieser Fragen- und Antworten-Thread auf dem Unix & Linux Stack Exchangegeht sehr detailliert darauf ein, warum die durch symbolische Links verursachten verschachtelten Verzeichnisse existieren.