GNU/Linux >> Tutoriels Linux >  >> Linux

Comment monter des partages Windows ou Samba de manière permanente

Ce guide décrit comment monter des partages Windows CIFS (SMB) de manière permanente. Les partages peuvent être hébergés sur un ordinateur/serveur Windows ou sur un serveur Linux/UNIX exécutant Samba. Ce document s'applique également aux partages SMBFS, qui sont similaires à CIFS mais sont obsolètes et doivent être évités si possible (lien).

Cette attribution est basée sur le document original d'Ubuntu (lien), écrit par les contributeurs au wiki de documentation d'Ubuntu.

(Ce document ne fait pas décrivez comment héberger vous-même les partages, uniquement comment accéder aux partages hébergés ailleurs. Pour héberger des partages, utilisez Samba.)

Prérequis

Nous supposons que :

  • Les connexions réseau ont été configurées correctement.
  • Votre nom d'utilisateur local est ubuntuusername .

  • Le nom d'utilisateur partagé sur l'ordinateur Windows est msusername .

  • Le mot de passe de partage sur l'ordinateur Windows est mspassword .

  • Le nom de l'ordinateur Windows est servername (il peut s'agir soit d'une adresse IP, soit d'un nom attribué).

  • Le nom du partage est sharename .

  • Vous voulez monter le partage dans /media/windowsshare .

Installation CIFS

sudo apt-get install cifs-utils

Sur les anciens systèmes :

sudo apt-get install smbfs

Montage de dossiers réseau non protégés (invités)

Commençons par créer le répertoire de montage. Vous aurez besoin d'un répertoire séparé pour chaque montage.

sudo mkdir /media/windowsshare

Modifiez ensuite votre fichier /etc/fstab (avec les privilèges root) pour ajouter cette ligne :

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

Où ;

  • invité indique que vous n'avez pas besoin d'un mot de passe pour accéder au partage,

  • uid=1000 fait de l'utilisateur Linux spécifié par l'id le propriétaire du partage monté, lui permettant de renommer les fichiers,

  • iocharset=utf8 permet l'accès aux fichiers avec des noms dans des langues autres que l'anglais. Cela ne fonctionne pas avec les partages d'appareils tels que Buffalo Tera Station ou les machines Windows qui exportent leurs partages à l'aide de la norme ISO8895-15.

  • S'il y a de l'espace dans le chemin du serveur , vous devez le remplacer par \040, par exemple //servername/My\040Documents

Après avoir ajouté l'entrée au type /etc/fstab :

sudo mount -a

Cela va (re)monter toutes les entrées listées dans /etc/fstab.

Monter des dossiers réseau protégés par mot de passe

Le moyen le plus rapide de monter automatiquement un partage protégé par mot de passe est de modifier /etc/fstab (avec les privilèges root), pour ajouter cette ligne :

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

Ce n'est pas une bonne idée cependant :/etc/fstab est lisible par tout le monde et votre mot de passe Windows aussi. La solution consiste à utiliser un fichier d'informations d'identification. Il s'agit d'un fichier contenant uniquement le nom d'utilisateur et le mot de passe.

À l'aide d'un éditeur de texte, créez un fichier pour vos identifiants de connexion aux serveurs distants :

gedit ~/.smbcredentials

Entrez votre nom d'utilisateur et votre mot de passe Windows dans le fichier :

username=msusername
password=mspassword

Enregistrez le fichier, quittez l'éditeur.

Modifiez les autorisations du fichier pour empêcher tout accès indésirable à vos informations d'identification :

chmod 600 ~/.smbcredentials

Modifiez ensuite votre fichier /etc/fstab (avec les privilèges root) pour ajouter cette ligne (en remplaçant la ligne non sécurisée dans l'exemple ci-dessus, si vous l'avez ajoutée) :

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

Enregistrez le fichier, quittez l'éditeur.

Enfin, testez l'entrée fstab en lançant :

sudo mount -a

S'il n'y a pas d'erreurs, vous devriez tester son fonctionnement après un redémarrage. Votre partage distant devrait monter automatiquement.

Autorisations spéciales

Si vous avez besoin d'une autorisation spéciale (comme chmod, etc.), vous devrez ajouter un uid (abréviation de ‘user id’) ou gid (pour ‘group id’) aux options de montage du partage.

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

Dépannage

Erreurs de connexion

Si vous obtenez l'erreur « erreur de montage (13) autorisation refusée », le serveur a refusé votre accès. Voici les premières choses à vérifier :

  • Utilisez-vous un nom d'utilisateur et un mot de passe valides ? Ce compte a-t-il vraiment accès à ce dossier ?
  • Avez-vous des espaces dans votre fichier d'informations d'identification ? Il devrait être password=mspassword , et non password = mspassword .

  • Avez-vous besoin d'un domaine ? Par exemple, si on vous dit que votre nom d'utilisateur est SALES\sally , alors en fait votre nom d'utilisateur est sally et votre domaine est SALES . L'entrée fstab doit indiquer :...username=sally,password=pass,domain=SALES,... Ou :...credentials=/path/to/file,domain=SALES,...

  • Le paramètre de sécurité est-il correct ? Le plus courant est sec=ntlm , mais vous pouvez également essayer les autres options répertoriées sur la page de manuel mount.cifs. La liste des pages de manuel omet l'option sec=lanman pour une raison quelconque, mais vous devriez également essayer celle-là (voir la discussion).

Le dossier réseau non protégé ne sera pas monté automatiquement

J'ai eu une situation où un dossier réseau non protégé ne se montait pas automatiquement pendant le démarrage, mais après avoir entré manuellement "sudo mount -a" était monté correctement. J'ai résolu ce problème en remplaçant l'option "guest" par "username=guest,password=". Si quelqu'un a une explication à cela, merci de laisser un commentaire.

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

Monter lors de la connexion au lieu du démarrage

Si pour une raison quelconque/etc/rc0.d/S31umountnfs.sh (problèmes de réseau par exemple) le montage automatique au démarrage ne fonctionne pas, vous pouvez ajouter le paramètre "noauto" à votre entrée smbfs fstab puis faire monter le partage à connexion.

Dans /etc/fstab :

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

Dans /etc/rc.local :

mount /media/windowsshare
exit 0

Arrêt lent en raison d'un bogue CIFS/Network Manager

Si vous utilisez Network Manager et que vous obtenez des arrêts très lents, c'est probablement parce que NM s'arrête avant de démonter les partages réseau. Cela entraînera le blocage de CIFS et l'attente d'environ 60 secondes. Voici comment y remédier :/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 exécute déjà umountnfs.sh au redémarrage et à l'arrêt par défaut (/etc/rc0.d/S31umountnfs.sh et /etc/rc6.d/S31umountnfs.sh) donc ce n'est plus nécessaire.

Options CIFS obsolètes

20 février 2008 TW

L'utilisation de dmask ou fmask dans le fichier fstab génère les avertissements suivants :AVERTISSEMENT :l'option de montage CIFS "dmask" est obsolète. Utilisez "dir_mode" à la place. AVERTISSEMENT :L'option de montage CIFS "fmask" est obsolète. Utilisez "file_mode" à la place.

Utilisez plutôt ce format :file_mode=0777,dir_mode=0777 . Ou dans certains cas, vous devrez peut-être utiliser file_mode=0777,dir_mode=0777,nounix (voir discussion)

Utilisation du tilde dans les noms de chemin tels que "credentials=~/.smbcredentials"

20 février 2008 TW

Curieusement, l'utilisation des informations d'identification=~/.smbcredentials dans fstab n'a pas fonctionné. J'ai dû utiliser le chemin complet, c'est-à-dire /home/username/.smbcredentials

(C'est probablement parce que le tilde "~" n'est qu'un alias abrégé du shell pour "$HOME" ; ce n'est pas quelque chose de reconnu à l'échelle du système par tous les programmes, surtout pas dans une table de fichiers système où le concept de "HOME ” n'existe pas vraiment. -Ian !)

Éléments historiques (anciennes versions d'Ubuntu)

Monter des partages protégés par mot de passe à l'aide de libpam_mount (Ubuntu 9.04)

En plus des hypothèses initiales, nous supposons que

  • Votre nom d'utilisateur et votre mot de passe sont les mêmes sur la machine Ubuntu et sur le lecteur réseau.

Installez libpam-mount :

sudo apt-get install libpam-mount

Modifiez /etc/security/pam_mount.conf.xml à l'aide de votre éditeur de texte préféré.

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

Tout d'abord, nous déplaçons les bits de configuration spécifiques à l'utilisateur vers un fichier que les utilisateurs peuvent réellement modifier eux-mêmes :supprimez les balises de commentaire () entourant la section intitulée . Enregistrez le fichier lorsque vous avez terminé. Avec cela en place, les utilisateurs peuvent créer leur propre ~/.pam_mount.conf.xml.

gedit ~/.pam_mount.conf.xml

Ajoutez ce qui suit :

<?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>

Le contenu de cet article est disponible sous une licence gratuite, voir Copyright / Licence pour plus de détails.


Linux
  1. Comment monter un système de fichiers, mapper les ID utilisateur ?

  2. Comment activer les autorisations de fichiers Unix sur le partage Samba avec Smb 2.0+ ?

  3. Comment monter un fichier iso sous Linux

  4. copier le fichier de Windows vers Linux

  5. Comment puis-je transmettre le fichier d'informations d'identification à mount.cifs ?

Comment monter le partage Windows sur Linux à l'aide de CIFS

Comment monter un fichier ISO sur Linux

Comment configurer le serveur de partage de fichiers Samba sur Ubuntu

Comment convertir un fichier Windows en un fichier UNIX

Comment monter un disque NTFS sous Linux

Partage de fichiers Windows Samba