Mengapa Anda harus membuat direktori sebelum dapat me-mount share?

11

Mengapa Anda harus membuat direktori sebelum Anda dapat me-mount share ke sana?

Misalnya: Saya tidak pernah mengerti mengapa mkdir diperlukan di sini:

mkdir /Volumes/foo
mount -t afp afp://username:[email protected]/foo /Volumes/foo
nama pengguna
sumber

Jawaban:

3

Pada sistem unix dan unix like yang meliputi sistem file Mac OS X ditata secara logis sangat berbeda dengan cara mereka pada Windows. Tidak ada yang namanya drive seperti C atau D dll. Hanya ada satu sistem file yang ditata sebagai hierarki (struktur pohon). Sistem file ini dapat terdiri dari satu drive fisik atau sejumlah drive fisik dalam sebuah mesin. Itu juga dapat terdiri dari memori dan berbagi dari komputer lain melalui protokol seperti NFS, CIFS dll. Karena tidak ada drive per se Anda perlu memiliki suatu tempat di sistem file yang Anda dapat melampirkan atau me-mount penyimpanan tambahan ini untuk sehingga Anda membuat direktori dan kemudian pasang sistem file lain di sana.

Sistem Linux misalnya memiliki direktori / mnt atau hierarki / mnt dengan direktori seperti cdrom dll. Dalam hal ini Anda tidak perlu membuat direktori terlebih dahulu, Anda dapat menggunakan salah satunya, tetapi Anda tidak diharuskan karena mount point dapat berada di mana saja pada sistem file. Manfaat ini bisa sangat berguna jika Anda membutuhkan lebih banyak ruang di mana-mana karena Anda dapat menambahkan drive lain, memindahkan data ke dalamnya dan kemudian memasangnya di tempat direktori lama itu dan semuanya akan tetap berfungsi tanpa perubahan.

Sean Preston
sumber
Terima kasih telah melihat yang itu. Ketinggalan ketika saya memeriksa pesan. Pos benar.
Sean Preston
Allright, membunuh komentar saya :)
limbus
5

Karena belum ada yang mengirim tambalan untuk menambahkan opsi --create-dir untuk me-mount? :)

Sakit kepala
sumber
Saya sangat yakin bahwa perilaku NEXTSTEP adalah sebagai opsi --create-dir Anda. Saya telah menghabiskan satu jam terakhir mencari bukti di internet, tetapi sayangnya tidak berhasil!
Adrian Smith
Tambalan
5

Itu karena ketika Anda memasang direktori, Anda mengatakan ke sistem Anda, "Bertindak seolah-olah file di <network share> benar-benar di <folder lokal>." Jika sistem tidak memiliki folder lokal, itu tidak dapat menempatkan file-file jaringan di sana.

Tim
sumber
2

yang paling mengganggu adalah IMHO yang membuat tautan di suatu tempat TIDAK perlu touch/ mkdir, dan perlu mount (bahkan jika -bindsecara lokal).

Tapi itu mungkin berjalan di bagian yang sama dengan "mengapa hard-link adalah default ketika semua orang hanya perlu symlink dan harus ln -s.

lImbus
sumber
2

Entri direktori perlu dibuat dalam / volume (dalam contoh khusus ini) sebelum kernel dapat terhubung ke jalur direktori.

MikeyB
sumber
1
Secara teknis itu tidak benar. Anda dapat memasang sistem file di sembarang tempat dalam hierarki Anda - ini merupakan praktik standar untuk memasangnya di / Volume / (dan dilakukan secara otomatis oleh OS) tetapi ada kalanya pemasangan di suatu tempat tertentu masuk akal.
Chealion
Oh, saya hanya bermaksud / volume dalam kasus khusus ini. :) Tidak secara umum.
MikeyB
Itu lebih masuk akal. :-)
Chealion