Pourquoi devez-vous créer un répertoire avant de pouvoir monter un partage?

11

Pourquoi devez-vous créer un répertoire avant de pouvoir y monter un partage?

Par exemple: je n'ai jamais compris pourquoi mkdir est nécessaire ici:

mkdir /Volumes/foo
mount -t afp afp://username:[email protected]/foo /Volumes/foo
Nom d'utilisateur
la source

Réponses:

3

Sur les systèmes Unix et Unix, qui incluent les systèmes de fichiers Mac OS X, ils sont logiquement très différents de la façon dont ils sont sous Windows. Il n'existe pas de lecteur comme C ou D, etc. Il n'y a qu'un seul système de fichiers qui est présenté comme une hiérarchie (structure arborescente). Ce système de fichiers peut être composé d'un lecteur physique ou d'un certain nombre de lecteurs physiques dans une machine. Il peut également être composé de mémoire et de partages à partir d'une autre machine via des protocoles tels que NFS, CIFS etc. Parce qu'il n'y a pas de disques en soi, vous devez avoir quelque part sur le système de fichiers que vous pouvez attacher ou monter ce stockage supplémentaire afin de créer un puis montez-y l'autre système de fichiers.

Les systèmes Linux, par exemple, ont soit un répertoire / mnt, soit une hiérarchie / mnt avec des répertoires comme cdrom, etc. Dans ce cas, vous n'avez pas besoin de créer un répertoire en premier, vous pouvez en utiliser un, mais vous n'êtes pas obligé de le faire car le point de montage peut être n'importe où sur le système de fichiers. Cet avantage peut être vraiment utile si vous avez besoin de plus d'espace, car vous pouvez ajouter un autre lecteur, y déplacer les données, puis le monter à l'emplacement de l'ancien répertoire et tout continuera à fonctionner sans aucune modification.

Sean Preston
la source
Merci d'avoir repéré celui-là. Je l'ai manqué quand j'ai vérifié le message. Message correct.
Sean Preston
Très bien, a tué mon commentaire :)
lImbus
5

Parce que personne n'a encore soumis de correctif pour ajouter l'option --create-dir à monter? :)

Zoredache
la source
Je suis très certain que le comportement de NEXTSTEP était celui de l'option --create-dir. J'ai passé la dernière heure à chercher des preuves sur Internet, mais hélas sans succès!
Adrian Smith
Le deuxième correctif serait "Lors du démontage ou de l'arrêt, supprimez le répertoire automatiquement"
WinEunuuchs2Unix
5

C'est parce que lorsque vous montez un répertoire, vous dites à votre système: «Agissez comme si les fichiers de <partage réseau> se trouvaient vraiment dans <dossier local>». Si le système n'a pas ce dossier local, il ne peut pas y placer ces fichiers réseau.

Tim
la source
2

le plus inquiétant est à mon humble avis que la création d'un lien quelque part n'a pas besoin de touch/ mkdir, et un montage (même -bindlocalement) a besoin.

Mais cela va probablement dans la même section que "pourquoi les liens physiques sont-ils la valeur par défaut quand tout le monde n'a besoin que de liens symboliques et doit le faire ln -s.

lImbus
la source
2

L'entrée de répertoire doit être créée dans / volumes (dans cet exemple particulier) avant que le noyau puisse se connecter au chemin du répertoire.

MikeyB
la source
1
Techniquement, c'est incorrect. Vous pouvez monter un système de fichiers à n'importe quel endroit de votre hiérarchie - il est courant de le monter dans / Volumes / (et c'est fait automatiquement par le système d'exploitation) mais il y a des moments où le monter dans un endroit spécifique est logique.
Chealion
Oh, je voulais seulement dire / volumes dans ce cas spécifique. :) Pas en général.
MikeyB
Cela a plus de sens. :-)
Chealion