Cómo montar una carpeta o sistema de archivos en Linux visible por FTP

En determinadas ocasiones, no basta con utilizar un enlace simbólico para crear carpetas que apuntan a otras partes de nuestros sistemas de ficheros.

Para acceder desde Apache, Cherokee, Nginx y otros servidores Web simplemente es suficiente con crear un enlace simbólico y decirle al servidor que siga el enlace.

Pero en el caso del vetusto pero eficaz FTP, esto no es posible.

Por defecto, los servidores FTP no reconocen los enlaces simbólicos, con lo que tu diseñador/programador web no estará muy contento de tener que acceder por otros métodos a esa subcarpeta que tan bien puede abrir Apache.

Y aquí es donde --bind llega al rescate. Básicamente, utilizar mount con la opción --bind nos permite decirle a nuestro sistema de ficheros que esa carpeta es un fichero de tipo carpeta, y no un enlace simbólico, por lo que el cliente FTP podrá ver la carpeta.

La forma de hacer el enlace es la siguiente :

mount --bind /var/www/misitioweb /home/miusuario  ( por ejemplo ).

La gran ventaja de de --bind es que puedes poner una carpeta de un sistema de archivos y montarla como si fuera otro sistema de archivos :

mount --bind /export/misdatosNFS/MiCarpetaEnRed /var/www/MiSitioWeb

Las ventajas de este sistema son muchas :

- Un usuario despistado ( ni siquiera root ) no puede borrar la carpeta

- No hace falta crear un enlace simbólico y asegurarse de que las aplicaciones los sigan.

- Los permisos son los de la carpeta original, que sigue siendo accesible a través de su propia ruta.

 

Espero que este truco os sirva de ayuda, a mí me vino muy bien.

 

Inspirado en este enlace : http://www.pc-freak.net/blog/create-ln-symbolink-or-hard-links-with-moun...