Diferencia entre revisiones de «Montar comparticiones remotas usando smbfs y cifs»
(Categorizando y sugiriendo fusion) |
(→Permisos especiales) |
||
(No se muestran 3 ediciones intermedias realizadas por 3 usuarios) | |||
Línea 5: | Línea 5: | ||
{{fusionar|Samba}} | {{fusionar|Samba}} | ||
− | = Instalación del sistema de ficheros Samba | + | == Instalación del sistema de ficheros Samba == |
− | $ sudo | + | $ sudo aptitude install smbfs |
+ | |||
+ | == Montar carpetas de red desprotegidas (accesibles como invitado) == | ||
− | |||
Asumiendo que: | Asumiendo que: | ||
* La conexión de red está configurada correctamente | * La conexión de red está configurada correctamente | ||
Línea 35: | Línea 36: | ||
Con lo que se volverán a montar todas las entradas de /etc/fstab | Con lo que se volverán a montar todas las entradas de /etc/fstab | ||
− | = Montando carpetas de red protegidas por contraseña = | + | == Montando carpetas de red protegidas por contraseña == |
+ | |||
Asumiendo todo lo dicho, y lo siguiente: | Asumiendo todo lo dicho, y lo siguiente: | ||
* El usuario de la carpeta compartida en la máquina Windows es ''myusername''. | * El usuario de la carpeta compartida en la máquina Windows es ''myusername''. | ||
Línea 62: | Línea 64: | ||
//servername/sharename /media/mountname smbfs credentials=~/.smbcredentials,dmask=777,fmask=777 0 0 | //servername/sharename /media/mountname smbfs credentials=~/.smbcredentials,dmask=777,fmask=777 0 0 | ||
− | |||
o bien, para dar sólo permisos de lectura: | o bien, para dar sólo permisos de lectura: | ||
//servername/sharename /media/mountname smbfs credentials=~/.smbcredentials 0 0 | //servername/sharename /media/mountname smbfs credentials=~/.smbcredentials 0 0 | ||
+ | |||
+ | Importante: Desde Intrepid, se debe reemplazar dmask por dir_mode y fmask por file_mode: | ||
+ | |||
+ | //servername/sharename /media/mountname smbfs credentials=~/.smbcredentials,dir_mode=777,file_mode=777 0 0 | ||
'''En algunos sistemas, el montaje automático de smbfs no funcionará correctamente'''. Para evitarlo, puede añadirse el parámetro "noauto" a fstab y después montar la compartición al iniciar la sesión | '''En algunos sistemas, el montaje automático de smbfs no funcionará correctamente'''. Para evitarlo, puede añadirse el parámetro "noauto" a fstab y después montar la compartición al iniciar la sesión | ||
Línea 79: | Línea 84: | ||
mount /media/mountname | mount /media/mountname | ||
exit 0 | exit 0 | ||
− | |||
{{esbozo}} | {{esbozo}} | ||
− | = Permisos especiales = | + | == Permisos especiales == |
+ | |||
Si se necesitan permisos especiales, deben añadirse los parámetros '''uid''' o '''gid''', poniendo el nombre o el id (del usuario, '''uid''; o del grupo, ''gid''): | Si se necesitan permisos especiales, deben añadirse los parámetros '''uid''' o '''gid''', poniendo el nombre o el id (del usuario, '''uid''; o del grupo, ''gid''): | ||
− | //servername/sharename /media/mountname smbfs uid='''eguser''',credentials= | + | //servername/sharename /media/mountname smbfs uid='''eguser''',credentials=/home/tu_usuario/.smbcredentials,dmask=777,fmask=777 0 0 |
Con esta línea /media/sharename pertenecerá al usuario ''eguser''. Mediante dmask y fmask se determina la máscara a utilizar para los permisos (en el ejemplo, se permite lectura, escritura y ejecución tanto de directorios como de ficheros). | Con esta línea /media/sharename pertenecerá al usuario ''eguser''. Mediante dmask y fmask se determina la máscara a utilizar para los permisos (en el ejemplo, se permite lectura, escritura y ejecución tanto de directorios como de ficheros). | ||
− | = Problemas conocidos = | + | == Problemas conocidos == |
− | == Las carpetas compartidas sin protección por contraseña no se montan automáticamente == | + | === Las carpetas compartidas sin protección por contraseña no se montan automáticamente === |
Al iniciar, puede que no se monte automáticamente la compartición, pero después ejecutando "sudo mount -a" sí funciona correctamente. Se soluciona con la siguiente línea: | Al iniciar, puede que no se monte automáticamente la compartición, pero después ejecutando "sudo mount -a" sí funciona correctamente. Se soluciona con la siguiente línea: | ||
Línea 98: | Línea 103: | ||
//servername/sharename /media/mountname smbfs username=guest,password=,uid=1000,iocharset=utf8,codepage=unicode,unicode 0 0 | //servername/sharename /media/mountname smbfs username=guest,password=,uid=1000,iocharset=utf8,codepage=unicode,unicode 0 0 | ||
+ | === smbfs: smbmnt must be installed suid root === | ||
+ | |||
+ | $ sudo chmod u+s `which smbmnt` | ||
+ | $ sudo chmod u+s `which smbumount` | ||
− | == Bugs y otras notas == | + | === Bugs y otras notas === |
''It [https://bugzilla.samba.org/show_bug.cgi?id=1920#c0 appears to be true]. I just fought through [http://ubuntuforums.org/showthread.php?p=2911178 several strange problems] after following this guide, only to have everything solved by using CIFS instead.'' | ''It [https://bugzilla.samba.org/show_bug.cgi?id=1920#c0 appears to be true]. I just fought through [http://ubuntuforums.org/showthread.php?p=2911178 several strange problems] after following this guide, only to have everything solved by using CIFS instead.'' |
Última revisión de 23:02 4 dic 2011
Este documento explica cómo montar comparticiones smbfs de forma permanente, por ejemplo comparticiones Windows o comparticiones de servidores samba sobre Linux/Unix.
Traducción de: https://wiki.ubuntu.com/MountWindowsSharesPermanently
Contenido
Instalación del sistema de ficheros Samba
$ sudo aptitude install smbfs
Montar carpetas de red desprotegidas (accesibles como invitado)
Asumiendo que:
- La conexión de red está configurada correctamente
- El nombre de la máquina Windows es servername, y que puede ser una dirección IP o un nombre asignado
- El nombre de la carpeta compartida es sharename.
- La carpeta compartida en la máquina Windows será montada en la carpeta local mountname.
Primero, crear la carpeta donde montar la compartición. Será necesaria una carpeta diferente para cada sistema de ficheros que se monte:
$ sudo mkdir /media/mountname
Editar el fichero /etc/fstab (como root) para añadir la siguiente línea
//servername/sharename /media/mountname smbfs guest,uid=1000,iocharset=utf8,codepage=unicode,unicode 0 0
Donde:
- guest indica que no es necesario usuario y contraseña para acceder a la carpeta compartida
- uid=1000 monta la compartición perteneciendo al usuario cuyo uid se especifica
- iocharset=utf8,codepage=unicode,unicode permite acceder a ficheros con nombres con caracteres de idiomas distintos al Inglés. Algunas instalaciones de Windows están configuradas para compartir utilizando ISO8895-15. En éstas, el argumento correcto sería codepage=cp850.
Tras las modificaciones descritas de /etc/fstab
$ sudo mount -a
Con lo que se volverán a montar todas las entradas de /etc/fstab
Montando carpetas de red protegidas por contraseña
Asumiendo todo lo dicho, y lo siguiente:
- El usuario de la carpeta compartida en la máquina Windows es myusername.
- La contraseña de la carpeta compartida en la máquina Windows es mypassword.
Puede montarse la carpeta incluyendo en /etc/fstab los parámetros username y password:
//servername/sharename /media/mountname smbfs username=myusername,password=mypassword 0 0
Pero, dado que /etc/fstab es legible por todos los usuarios, es evidente que no conviene tener escritas las contraseñas Windows en claro. La forma de evitarlo es utilizar un fichero de credenciales, del que controlaremos los permisos y que contienen únicamente el usuario y su contraseña:
$ sudo gedit ~/.smbcredentials
Añadir las siguientes líneas:
username=myusername password=mypassword
y salvar el fichero.
Ahora se modifican los permisos del fichero para que sólo el usuario pueda leerlo y escribir en él.
$ sudo chmod 600 ~/.smbcredentials
Y ahora se añade la siguiente línea en /etc/fstab (en este caso, permitiendo lectura y escritura a todo usuario):
//servername/sharename /media/mountname smbfs credentials=~/.smbcredentials,dmask=777,fmask=777 0 0
o bien, para dar sólo permisos de lectura:
//servername/sharename /media/mountname smbfs credentials=~/.smbcredentials 0 0
Importante: Desde Intrepid, se debe reemplazar dmask por dir_mode y fmask por file_mode:
//servername/sharename /media/mountname smbfs credentials=~/.smbcredentials,dir_mode=777,file_mode=777 0 0
En algunos sistemas, el montaje automático de smbfs no funcionará correctamente. Para evitarlo, puede añadirse el parámetro "noauto" a fstab y después montar la compartición al iniciar la sesión
/etc/fstab:
//servername/sharename /media/mountname smbfs noauto,credentials=~/.smbpasswd 0 0
después, editar /etc/rc.local para montar la carpeta smbfs cuando se inicia la sesión (hay que asegurarse de los usuarios tienen suficientes permisos para ejecutar /etc/rc.local):
#!/bin/sh -e mount /media/mountname exit 0
Este artículo es, por ahora, sólo un esbozo.
Ampliándolo ayudarás a mejorar Guía Ubuntu.
Permisos especiales
Si se necesitan permisos especiales, deben añadirse los parámetros uid' o gid, poniendo el nombre o el id (del usuario, uid; o del grupo, gid):
//servername/sharename /media/mountname smbfs uid=eguser,credentials=/home/tu_usuario/.smbcredentials,dmask=777,fmask=777 0 0
Con esta línea /media/sharename pertenecerá al usuario eguser. Mediante dmask y fmask se determina la máscara a utilizar para los permisos (en el ejemplo, se permite lectura, escritura y ejecución tanto de directorios como de ficheros).
Problemas conocidos
Las carpetas compartidas sin protección por contraseña no se montan automáticamente
Al iniciar, puede que no se monte automáticamente la compartición, pero después ejecutando "sudo mount -a" sí funciona correctamente. Se soluciona con la siguiente línea:
//servername/sharename /media/mountname smbfs username=guest,password=,uid=1000,iocharset=utf8,codepage=unicode,unicode 0 0
smbfs: smbmnt must be installed suid root
$ sudo chmod u+s `which smbmnt` $ sudo chmod u+s `which smbumount`
Bugs y otras notas
It appears to be true. I just fought through several strange problems after following this guide, only to have everything solved by using CIFS instead.