Si intento montar una carpeta que ya tiene archivos, ¿Linux me da un mensaje de error o muestra el sistema de archivos montado y los archivos que ya estaban en la carpeta?
Si intento montar una carpeta que ya tiene archivos, ¿Linux me da un mensaje de error o muestra el sistema de archivos montado y los archivos que ya estaban en la carpeta?
Respuestas:
Simplemente se montará y los archivos desaparecerán, volviendo cuando la carpeta esté desmontada.
Cuando monta un sistema de archivos en un directorio /mount-point
, ya no puede acceder a los archivos /mount-point
directamente. Todavía existen, pero /mount-point
ahora se refiere a la raíz del sistema de archivos montado, no al directorio que sirvió como punto de montaje, por lo que no se puede acceder al contenido de este directorio, al menos de esta manera. Por ejemplo:
# 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
Hay formas de obtener una vista combinada del sistema de archivos montado y los datos que ya estaban presentes, pero necesita una capa adicional llamada sistema de archivos de unión .
Bajo Linux, hay una manera de ver los archivos ocultos. Puede usar mount --bind
para obtener otra vista del sistema de archivos donde está el punto de montaje. Por ejemplo
mount --bind / /other-root-view
Verá todos los archivos en el sistema de archivos raíz en /other-root-view
.
# cat /other-root-view/etc/hostname
darkstar
En particular, /mount-point
ahora será accesible como /other-root-view/mount-point
, y como /other-root-view/mount-point
no es un punto de montaje, puede ver su contenido allí:
# 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
/mount-point/1/
luego monté otro sistema de archivos /mount-point/
, ¿puedo acceder /mount-point/1/
?
mkdir /r; mount --bind / /r; du -sh /r/*
. Gracias
du -x
(equivalente a du --one-file-system
) lo habría hecho sin la necesidad de --bind
travesuras.