Eso es exactamente lo que hace shfs, o SHell File System. Permite montar directorios remotos via ssh usando un módulo del kernel (como smbfs) y una herramienta "user-space", como mount.
Para empezar, puedes descargarte shfs de:
http://shfs.sourceforge.net/Antes de empezar, asegúrense que tienen las fuentes del kernel instaladas y, por supuesto,
el compilador de C, que tiene que ser exactamente la misma versión que compiló el kernel:
$ mv shfs-0.35.tar.gz /usr/local/srcRecuerden remplazar 0.35 por la versión que descargaron de la pagina....
$ cd /usr/local/src
$ tar xvzf shfs-0.35.tar.gz
$ cd shfs-0.35
$ make
$ sudo make install
El ejemplo de arriba compilará el módulo del kernel para tu kernel (shfs soporta tanto el kernel 2.4 como el 2.6) y también compilará la utilidad shfsmount.
Si estás usando gcc4, necesitarás descargar y aplicar este parche para que shfs compile correctamente:
http://atrey.karlin.mff.cuni.cz/~qiq/src/shfs/shfs-0.35/gcc4-compilefix.patch.Una vez tengas instalado shfs , carga el módulo del kernel y monta tu primer sistema de ficheros remoto:
# modprobe shfsEsto montará el direcorio home de user@remote en el directorio /mnt/user.
# shfsmount user@remote /mnt/user
También puedes usar el propio comando mount:
# mount -t shfs user@remote:/data /dataAsí pues, podrías automontar ciertos directorios en el arranque añadiendo entradas en el /etc/fstab. Por supuesto, querrás usar las claves ssh ya que en cada arranque se te preguntará por un password. Como puedes ver, shfs es extremadamente fácil de usar y es muy versátil. Te permite montar un disco remoto de la oficina en tu escritorio de casa, reconociéndolo como local, pero sin el agobio de hacer nada aparte de habilitar el ssh en la máquina remota.
Para los usuarios que disponen de apt-get o aptitude, la cosa es mas fácil!!!
$ sudo aptitude install sshfsSHFS necesita el módulo “fuse” para poder funcionar, por lo que tendréis que ejecutarlo siempre. Para que no lo tengáis que hacer a mano y lo cargue el sistema automáticamente, abran el fichero /etc/modules:
$ sudo gedit /etc/modulesSi está, no tienen que hacer nada más. Los que no lo tengan simplemente agregan “fuse” al final del fichero por ejemplo, guardan y cierran...
Los que metieron ahora tienen dos opciones para cargar fuse, reiniciar y que se cargue automáticamente mediante el archivo modules o cargarlo manualmente hasta que reinicien. Supongo que preferís la segunda opción:
$ sudo modprobe fuseHecho esto el último requerimiento que necesitamos es tener el servidor SSH funcionando.
En cuanto a configuración tan sólo tienen que agregar su cuenta al grupo que tiene acceso a fuse:
$ sudo usermod -G fuse -a tu_cuentaAconsejo que ahora reinicien el entorno gráfico (Ctrl+Alt+Backspace) para tener la certeza de que se aplique la adicción al grupo, en caso contrario es muy probable que de un error de permisos...
En el fondo ya está todo listo para montar la carpeta remota en nuestra carpeta local. Vamos a probarlo.
Creen una carpeta donde quieran. Para que sirva de ejemplo voy a crear la carpeta “pepino” en “/home/ceec/”. Tan sólo tenen que cambiar “ceec” por su cuenta en los siguientes pasos
$ mkdir /home/ceec/pepinoLa carpeta “pepino” va a ser el punto de montaje de la carpeta remota. Es decir, cuando acceda a “pepino” voy a acceder a la carpeta del otro ordenador. En principio para montarla
$ sshfs ceec@192.168.1.4:/home/ceec /home/ceec/pepino/donde:
- sshfs es el comando que va a realizar el montaje remoto
- ceec es la cuenta a la que tenéis acceso en el equipo remoto.
- 192.168.1.4 es la ip del PC remoto. Pueden usar una IP pública para acceder desde el trabajo a casa.
- /home/ceec es la carpeta del ordenador remoto que quiero montar en…
- /home/ceec/pepino/ que es la carpeta del equipo que tengo delante.
$ sshfs -p 8448 ceec@192.168.1.4:/home/ceec /home/ceec/pepino/Siendo 8448 el puerto del ordenador remoto.
A partir de este momento, todo lo que borren, añadan, modifiquen de esa carpeta, lo haran también de la carpeta del otro ordenador.
Una vez montada la carpeta… ¿cómo se desmonta?
$ fusermount -u /home/ceec/pepinoListo. Es un buen método para tener algo de nuestro ordenador siempre accesible, o bien para trabajar directamente sobre tus archivos remotos, o bien para compartir lo que queráis a modo de FTP casero o algo parecido. Hay otras alternativas como SFTP y SAMBA, pero hay un punto a favor muy bueno para usar SSHFS, su facilidad de instalación, configuración, uso y, sobre todo, su seguridad ya que toda la información que viaje de un equipo al otro estará encriptada.
Nota:
Los usuarios de windows pueden ver: dokan
No hay comentarios.:
Publicar un comentario