Warum müssen Sie ein Verzeichnis erstellen, bevor Sie eine Freigabe bereitstellen können?

11

Warum müssen Sie ein Verzeichnis erstellen, bevor Sie eine Freigabe darauf bereitstellen können?

ZB: Ich habe nie verstanden, warum hier mkdir benötigt wird:

mkdir /Volumes/foo
mount -t afp afp://username:[email protected]/foo /Volumes/foo
Nutzername
quelle

Antworten:

3

Auf Unix- und Unix-ähnlichen Systemen, die Mac OS X-Dateisysteme enthalten, sind sie logisch sehr unterschiedlich angelegt wie unter Windows. Es gibt kein Laufwerk wie C oder D usw. Es gibt nur ein einziges Dateisystem, das als Hierarchie (Baumstruktur) angeordnet ist. Dieses Dateisystem kann aus einem physischen Laufwerk oder mehreren physischen Laufwerken in einem Computer bestehen. Es kann auch aus Speicher und Freigaben von einem anderen Computer über Protokolle wie NFS, CIFS usw. bestehen. Da an sich keine Laufwerke vorhanden sind, müssen Sie irgendwo im Dateisystem einen Speicher haben, an den Sie diesen zusätzlichen Speicher anschließen oder mounten können, um einen zu erstellen Verzeichnis und mounten Sie dann das andere Dateisystem dort.

Linux-Systeme haben beispielsweise entweder ein / mnt-Verzeichnis oder eine / mnt-Hierarchie mit Verzeichnissen wie cdrom usw.. In diesem Fall müssen Sie nicht zuerst ein Verzeichnis erstellen. Sie können eines davon verwenden, müssen dies jedoch nicht, da sich der Mount-Punkt an einer beliebigen Stelle im Dateisystem befinden kann. Dieser Vorteil kann sehr nützlich sein, wenn Sie überall mehr Speicherplatz benötigen, da Sie ein weiteres Laufwerk hinzufügen, die Daten darauf verschieben und dann dort einbinden können, wo sich das alte Verzeichnis befand, und alles ohne Änderungen weiter funktioniert.

Sean Preston
quelle
Danke, dass du das entdeckt hast. Ich habe es verpasst, als ich die Nachricht überprüft habe. Post korrekt.
Sean Preston
Okay, habe meinen Kommentar getötet :)
Imbus
5

Weil noch niemand einen Patch eingereicht hat, um die Option --create-dir zum Mounten hinzuzufügen? :) :)

Zoredache
quelle
Ich bin mir sehr sicher, dass sich NEXTSTEP so verhalten hat, wie es Ihre Option --create-dir wäre. Ich habe die letzte Stunde damit verbracht, im Internet nach Beweisen zu suchen, aber leider ohne Erfolg!
Adrian Smith
Der zweite Patch wäre "Beim Aufheben oder Herunterfahren das Verzeichnis automatisch entfernen"
WinEunuuchs2Unix
5

Dies liegt daran, dass Sie beim Mounten eines Verzeichnisses zu Ihrem System sagen: "Tun Sie so, als ob sich die Dateien unter <Netzwerkfreigabe> wirklich im <lokalen Ordner> befinden." Wenn das System diesen lokalen Ordner nicht hat, kann es diese Netzwerkdateien nicht dort ablegen.

Tim
quelle
2

am meisten stört , ist meiner Meinung nach, dass Sie einen Link irgendwo zu schaffen braucht nicht zu touch/ mkdirund eine Halterung (auch wenn -bindlokal) Bedürfnisse.

Aber es geht wahrscheinlich in den gleichen Abschnitt wie "Warum sind Hardlinks die Standardeinstellung, wenn jeder nur Symlinks benötigt und muss ln -s.

Imbus
quelle
2

Der Verzeichniseintrag muss in / volume (in diesem Beispiel) erstellt werden, bevor sich der Kernel in den Verzeichnispfad einbinden kann.

MikeyB
quelle
1
Technisch ist das falsch. Sie können ein Dateisystem an jeder Stelle in Ihrer Hierarchie bereitstellen - es ist Standardpraxis, es in / Volumes / bereitzustellen (und wird vom Betriebssystem automatisch durchgeführt), aber manchmal ist es sinnvoll, es an einem bestimmten Ort bereitzustellen.
Chealion
Oh, ich meinte nur / Bände in diesem speziellen Fall. :) Im Allgemeinen nicht.
MikeyB
Das macht mehr Sinn. :-)
Chealion