web-dev-qa-db-fra.com

Que fait Linux avec les fichiers existants dans un point de montage?

Si je tente de monter un dossier contenant déjà des fichiers, Linux me donne-t-il un message d'erreur ou affiche-t-il à la fois le système de fichiers monté et les fichiers déjà présents dans le dossier?

51
shady

Il sera simplement monté et les fichiers disparaîtront pour revenir lorsque le dossier sera démonté.

32
Azz

Lorsque vous montez un système de fichiers sur un répertoire /mount-point, vous ne pouvez plus accéder directement aux fichiers sous /mount-point. Ils existent toujours, mais /mount-point fait maintenant référence à la racine du système de fichiers monté, et non au répertoire qui a servi de point de montage; le contenu de ce répertoire ne peut donc pas être consulté, du moins de cette façon. Par exemple:

# touch /mount-point/somefile
# ls /mount-point/somefile
/mount-point/somefile
# mount /dev/something /mount-point
# ls /mount-point/somefile
ls: cannot access /mount-point/somefile: No such file or directory

Il existe des moyens d'obtenir une vue fusionnée du système de fichiers monté et des données déjà présentes, mais vous avez besoin d'une couche supplémentaire appelée système de fichiers union .

Sous Linux, il existe un moyen de voir les fichiers cachés. Vous pouvez utiliser mount --bind pour obtenir une autre vue du système de fichiers où se trouve le point de montage. Par exemple

mount --bind / /other-root-view

Vous verrez tous les fichiers dans le système de fichiers racine sous /other-root-view.

# cat /other-root-view/etc/hostname 
darkstar

En particulier, /mount-point sera désormais accessible en tant que /other-root-view/mount-point et, étant donné que /other-root-view/mount-point n'est pas un point de montage, vous pouvez en voir le contenu ici:

# ls /mount-point/somefile
ls: cannot access /mount-point/somefile: No such file or directory
# ls /other-root-view/mount-point/somefile
/other-root-view/mount-point/somefile
111
Gilles