GNU/Linux >> Tutoriales Linux >  >> Linux

Cómo montar recursos compartidos de Windows o Samba de forma permanente

Este procedimiento describe cómo montar recursos compartidos de Windows CIFS (SMB) de forma permanente. Los recursos compartidos pueden estar alojados en una computadora/servidor con Windows, o en un servidor Linux/UNIX que ejecute Samba. Este documento también se aplica a recursos compartidos de SMBFS, que son similares a CIFS pero están en desuso y deben evitarse si es posible (enlace).

Esta atribución se basa en el documento original de Ubuntu (enlace), escrito por Colaboradores en la wiki de documentación de Ubuntu.

(Este documento no describa cómo alojar los recursos compartidos usted mismo, solo cómo acceder a los recursos compartidos que están alojados en otro lugar. Para compartir alojamiento, use Samba.)

Requisitos previos

Suponemos que:

  • Las conexiones de red se han configurado correctamente.
  • Su nombre de usuario local es ubuntuusername .

  • El nombre de usuario compartido en la computadora con Windows es msusername .

  • La contraseña compartida en la computadora con Windows es mspassword .

  • El nombre de la computadora con Windows es servername (puede ser una dirección IP o un nombre asignado).

  • El nombre del recurso compartido es sharename .

  • Desea montar el recurso compartido en /media/windowsshare .

Instalación de CIFS

sudo apt-get install cifs-utils

En sistemas más antiguos:

sudo apt-get install smbfs

Montar carpetas de red desprotegidas (invitadas)

Primero, creemos el directorio de montaje. Necesitará un directorio separado para cada montaje.

sudo mkdir /media/windowsshare

Luego edite su archivo /etc/fstab (con privilegios de root) para agregar esta línea:

//servername/sharename  /media/windowsshare  cifs  guest,uid=1000,iocharset=utf8  0  0

Dónde;

  • invitado indica que no necesita una contraseña para acceder al recurso compartido,

  • uid=1000 convierte al usuario de Linux especificado por el id en el propietario del recurso compartido montado, lo que le permite cambiar el nombre de los archivos,

  • iocharset=utf8 permite el acceso a archivos con nombres en idiomas distintos del inglés. Esto no funciona con recursos compartidos de dispositivos como Buffalo Tera Station o máquinas Windows que exportan sus recursos compartidos mediante ISO8895-15.

  • Si hay algún espacio en la ruta del servidor , debe reemplazarlo por \040, por ejemplo //nombre del servidor/Mis\040Documentos

Después de agregar la entrada a /etc/fstab escriba:

sudo mount -a

Esto (re)montará todas las entradas enumeradas en /etc/fstab.

Montar carpetas de red protegidas con contraseña

La forma más rápida de montar automáticamente un recurso compartido protegido con contraseña es editar /etc/fstab (con privilegios de root), para agregar esta línea:

//servername/sharename  /media/windowsshare  cifs  username=msusername,password=mspassword,iocharset=utf8,sec=ntlm  0  0

Esto es no Sin embargo, es una buena idea:todos pueden leer /etc/fstab, al igual que su contraseña de Windows. La forma de evitar esto es usar un archivo de credenciales. Este es un archivo que contiene solo el nombre de usuario y la contraseña.

Con un editor de texto, cree un archivo para la credencial de inicio de sesión de su servidor remoto:

gedit ~/.smbcredentials

Introduzca su nombre de usuario y contraseña de Windows en el archivo:

username=msusername
password=mspassword

Guarde el archivo, salga del editor.

Cambie los permisos del archivo para evitar el acceso no deseado a sus credenciales:

chmod 600 ~/.smbcredentials

Luego edite su archivo /etc/fstab (con privilegios de raíz) para agregar esta línea (reemplazando la línea insegura en el ejemplo anterior, si la agregó):

//servername/sharename /media/windowsshare cifs credentials=/home/ubuntuusername/.smbcredentials,iocharset=utf8,sec=ntlm 0 0

Guarde el archivo, salga del editor.

Finalmente, pruebe la entrada fstab emitiendo:

sudo mount -a

Si no hay errores, debe probar cómo funciona después de reiniciar. Su recurso compartido remoto debería montarse automáticamente.

Permisos especiales

Si necesita un permiso especial (como chmod, etc.), deberá agregar un uid (abreviatura de 'identificación de usuario') o gid (para 'ID de grupo') parámetro a las opciones de montaje del recurso compartido.

//servername/sharename  /media/windowsshare  cifs   uid=ubuntuuser,credentials=/home/ubuntuuser/.smbcredentials,iocharset=utf8,sec=ntlm   0       0

Resolución de problemas

Errores de inicio de sesión

Si obtiene el error "permiso de error de montaje (13) denegado", entonces el servidor le negó el acceso. Estas son las primeras cosas que debe comprobar:

  • ¿Está utilizando un nombre de usuario y una contraseña válidos? ¿Esa cuenta realmente tiene acceso a esta carpeta?
  • ¿Tiene espacios en blanco en su archivo de credenciales? Debería ser contraseña=mscontraseña , no contraseña = mscontraseña .

  • ¿Necesitas un dominio? Por ejemplo, si le dicen que su nombre de usuario es SALES\sally , entonces tu nombre de usuario es sally y su dominio es VENTAS . La entrada fstab debe decir:...username=sally,password=password=password,domain=SALES,... O:...credenciales=/ruta/al/archivo,dominio=VENTAS,...

  • ¿La configuración de seguridad es correcta? El más común es sec=ntlm , pero también puede probar las otras opciones enumeradas en la página de manual de mount.cifs. La lista de páginas man omite la opción sec=lanman por alguna razón, pero también deberías intentarlo (ver discusión).

La carpeta de red desprotegida no se montará automáticamente

Tuve una situación en la que una carpeta de red desprotegida no se montaba automáticamente durante el arranque, pero después de ingresar manualmente "sudo mount -a" se montó correctamente. Resolví esto reemplazando la opción "invitado" por "nombre de usuario =invitado, contraseña =". Si alguien tiene una explicación para esto, por favor deje un comentario.

//servername/sharename  /media/windowsshare  smbfs  username=guest,password=,uid=1000,iocharset=utf8,codepage=unicode,unicode  0  0

Montar durante el inicio de sesión en lugar del arranque

Si por alguna razón/etc/rc0.d/S31umountnfs.sh (problemas de red, por ejemplo) el montaje automático durante el arranque no funciona, puede agregar el parámetro "noauto" a su entrada smbfs fstab y luego montar el recurso compartido en acceso.

En /etc/fstab:

//servername/sharename  /media/windowsshare  cifs  noauto,credentials=/home/ubuntuusername/.smbpasswd  0  0

En /etc/rc.local:

mount /media/windowsshare
exit 0

Apagado lento debido a un error de CIFS/Network Manager

Si usa Network Manager y los apagados son muy lentos, probablemente se deba a que NM se apaga antes de desmontar los recursos compartidos de la red. Eso hará que CIFS se cuelgue y espere unos 60 segundos. He aquí cómo solucionarlo:/etc/rc0.d/S31umountnfs.sh

sudo ln -s /etc/init.d/umountnfs.sh /etc/rc0.d/K14umountnfs.sh
sudo ln -s /etc/init.d/umountnfs.sh /etc/rc6.d/K14umountnfs.sh

Ubuntu 12.04 ya ejecuta umountnfs.sh al reiniciar y apagar de forma predeterminada (/etc/rc0.d/S31umountnfs.sh y /etc/rc6.d/S31umountnfs.sh), por lo que ya no es necesario.

Opciones de CIFS obsoletas

20 de febrero de 2008 TW

El uso de dmask o fmask en el archivo fstab produce las siguientes advertencias:ADVERTENCIA:La opción de montaje de CIFS 'dmask' está en desuso. Utilice 'dir_mode' en su lugar. ADVERTENCIA:La opción de montaje de CIFS 'fmask' está en desuso. Use 'file_mode' en su lugar.

En su lugar, utilice este formato:file_mode=0777,dir_mode=0777 . O, en algunos casos, es posible que necesite usar file_mode=0777,dir_mode=0777,nounix (ver discusión)

Uso de tilde en nombres de ruta como “credentials=~/.smbcredentials”

20 de febrero de 2008 TW

Curiosamente, usar credentials=~/.smbcredentials en fstab no funcionó. Tuve que usar la ruta completa, es decir, /home/username/.smbcredentials

(Esto es probable porque la tilde "~" es solo un alias abreviado de shell para "$HOME"; no es algo reconocido en todo el sistema por todos los programas, especialmente no en una tabla de archivos del sistema donde el concepto de "HOME ” en realidad no existe. -¡Ian!)

Elementos históricos (versiones anteriores de Ubuntu)

Montar recursos compartidos protegidos con contraseña usando libpam_mount (Ubuntu 9.04)

Además de las suposiciones iniciales, asumimos que

  • Su nombre de usuario y contraseña son los mismos en la máquina Ubuntu y en la unidad de red.

Instalar libpam-mount:

sudo apt-get install libpam-mount

Edite /etc/security/pam_mount.conf.xml con su editor de texto preferido.

gksudo gedit /etc/security/pam_mount.conf.xml

Primero, estamos moviendo los bits de configuración específicos del usuario a un archivo que los usuarios pueden editar ellos mismos:elimine las etiquetas de comentarios () que rodean la sección llamada . Guarde el archivo cuando haya terminado. Con esto en su lugar, los usuarios pueden crear su propio ~/.pam_mount.conf.xml.

gedit ~/.pam_mount.conf.xml

Agregue lo siguiente:

<?xml version="1.0" encoding="utf-8" ?>

<pam_mount>

<volume options="uid=%(USER),gid=100,dmask=0700" user="*" mountpoint="/media/windowsshare" path="sharename" server="servername" fstype="cifs" />

</pam_mount>

El material de esta publicación está disponible bajo una licencia gratuita, consulte Derechos de autor / Licencia para obtener más información.


Linux
  1. Cómo usar autofs para montar recursos compartidos NFS

  2. Cómo editar su archivo de hosts en Windows 10

  3. Cómo montar un archivo iso en Linux

  4. ¿Cómo montar un archivo ISO en Linux?

  5. ¿Cómo paso el archivo de credenciales a mount.cifs?

Cómo montar Windows Share en Linux usando CIFS

Cómo montar un archivo ISO en Linux

Cómo configurar el servidor de intercambio de archivos Samba en Ubuntu

Cómo convertir un archivo de Windows a un archivo UNIX

Cómo montar un disco NTFS en Linux

Uso compartido de archivos de Windows Samba