Montage de partages SAMBA (CIFS) sous Linux
Table des matières
Dans cet article, nous allons voir comment sous Linux configurer des montages réseaux à travers des partages SAMBA.
Il peut être nécessaire, que ce soit sur un serveur ou un poste de travail de connecter automatiquement des montages réseaux à destination de machines Windows ou de NAS à travers le protocole SMB.
Cet article n'aborde pas la configuration d'un serveur SAMBA sous Linux, ni de serveur de fichier sous Windows.
Le partage est accessible via : \\192.168.21.25\linuxtricks
Les identifiants seront : linuxtricksuser / Linuxtrickspass123
L'ensemble des commandes sont saisies en tant que root.
Sous Linux, les outils permettant de gérer le protocole samba ne sont pas installés par défaut la plupart du temps.
Sur Fedora, RHEL et dérivées :
Sur Debian, Ubuntu :
Nous aurons besoin que de ça.
Pour monter manuellement un partage dans /mnt/linuxtricks, on utilisera la commande mount :
Les options additionnelles via -o indiquent les identifiants, et le jeu de caractère.
Il est nécessaire d'avoir les droits superutilisateur pour monter une ressource réseau.
Si on ne veut pas que les identifiants soient dans la ligne de commande, on peut créer un fichier dans lequel stocker les identifiants. Je créé généralement ce fichier sur mes serveurs dans /root :
Voici le contenu :
Et on effectue le montage ainsi dans /mnt/linuxtricks :
Pour démonter le partage si nécessaire, on utilisera la commande umount :
Pour effectuer le montage dans une session graphique, on pourra utiliser notre gestionnaire de fichiers.
Dans les environnements de bureau GTK (GNOME, Cinnamon, Xfce, ...) on s'assurera que GVFS supporte le protocole SMB. C'est proposé via gvfs-smb qui est installé par défaut.
On pourra se connecter via le gestionnaire de fichiers avec comme URL :
Les informations d'identification sont demandées et sont enregistrables :
Une fois les informations validées, l'accès au dossier est possible. Le partage est aussi accessible sur la barre latérale, et épinglable :
Pour démonter le partage, on clique sur le bouton "Eject"
Pour monter des partages SMB automatiquement au démarrage de la machine, on peut le faire de plusieurs façons :
1/ Dans le fichier fstab
2/ Via systemd
3/ Via autofs (non traité dans cet article)
Je préfère la solution systemd, cependant je vous montre les 2 méthodes.
Il est possible de paramétrer le fichier /etc/fstab pour réaliser le montage automatique des partages.
Pour ne pas que les identifiants soient en clair dans le fichier fstab, on peut créer un fichier dans lequel stocker les identifiants. Je créé généralement ce fichier sur mes serveurs dans /root :
Voici le contenu :
Ensuite, on édite le fichier /etc/fstab, et on y place la ligne suivante :
L'option credentials= infique le fichier contenant les infos d'identfication
L'option iocharset= indique le jeu de caractères à utiliser
L'option _netdev indique d'attendre que le réseau soit opérationnel pour monter le partage
Pour démonter le partage si nécessaire, on utilisera la commande umount :
La méthode que je préfère car elle fonctionne à tous les coups est de réaliser un montage avec une unité systemd.
On utilisera l'unité de type .mount qui est prévue à cet effet.
Pour ne pas que les identifiants soient en clair dans l'unité systemd, on peut créer un fichier dans lequel stocker les identifiants. Je créé généralement ce fichier sur mes serveurs dans /root :
Aussi, cela permet de ne pas modifier l'unité si le mot de passe est changé.
Voici le contenu :
Le nom de l'unité qu'on créera dans /etc/systemd/system doit avoir le nom du point de montage (les / remplacés par des -) comme par exemple :
Voici le contenu :
La section Unit permet d'avoir une description et surtout d'attendre que tous les éléments réseaux soient opérationnels
La section Mount indique quoi monter, où, le protocole et les options.
On recharge ensuite le démon systemd :
On active l'unité pour que le système de fichiers soit monté au démarrage et on démarre l'unité au passage :
Pour démonter le partage si nécessaire, on arrêtera l'unité.
Introduction
Dans cet article, nous allons voir comment sous Linux configurer des montages réseaux à travers des partages SAMBA.
Il peut être nécessaire, que ce soit sur un serveur ou un poste de travail de connecter automatiquement des montages réseaux à destination de machines Windows ou de NAS à travers le protocole SMB.
Cet article n'aborde pas la configuration d'un serveur SAMBA sous Linux, ni de serveur de fichier sous Windows.
Le partage est accessible via : \\192.168.21.25\linuxtricks
Les identifiants seront : linuxtricksuser / Linuxtrickspass123
L'ensemble des commandes sont saisies en tant que root.
Prérequis
Sous Linux, les outils permettant de gérer le protocole samba ne sont pas installés par défaut la plupart du temps.
Sur Fedora, RHEL et dérivées :
Code BASH :
dnf install cifs-utils
Sur Debian, Ubuntu :
Code BASH :
apt install cifs-utils
Nous aurons besoin que de ça.
Montage manuel
En ligne de commande
Pour monter manuellement un partage dans /mnt/linuxtricks, on utilisera la commande mount :
Code BASH :
mount -t cifs -o username=linuxtricksuser,password=Linuxtrickspass123,iocharset=utf8 //192.168.21.25/linuxtricks/ /mnt/linuxtricks
Les options additionnelles via -o indiquent les identifiants, et le jeu de caractère.
Il est nécessaire d'avoir les droits superutilisateur pour monter une ressource réseau.
Si on ne veut pas que les identifiants soient dans la ligne de commande, on peut créer un fichier dans lequel stocker les identifiants. Je créé généralement ce fichier sur mes serveurs dans /root :
Code BASH :
vim /root/.credentials
Voici le contenu :
Code :
username=linuxtricksuser
password=Linuxtrickspass123
domain=WORKGROUP
Et on effectue le montage ainsi dans /mnt/linuxtricks :
Code BASH :
sudo mount -t cifs -o credentials=/root/.credentials,iocharset=utf8 //192.168.21.25/linuxtricks/ /mnt/linuxtricks
Pour démonter le partage si nécessaire, on utilisera la commande umount :
Code BASH :
umount /mnt/linuxtricks
En graphique avec gvfs
Pour effectuer le montage dans une session graphique, on pourra utiliser notre gestionnaire de fichiers.
Dans les environnements de bureau GTK (GNOME, Cinnamon, Xfce, ...) on s'assurera que GVFS supporte le protocole SMB. C'est proposé via gvfs-smb qui est installé par défaut.
On pourra se connecter via le gestionnaire de fichiers avec comme URL :
Code BASH :
smb://adresse_ip/partage
Les informations d'identification sont demandées et sont enregistrables :
Une fois les informations validées, l'accès au dossier est possible. Le partage est aussi accessible sur la barre latérale, et épinglable :
Pour démonter le partage, on clique sur le bouton "Eject"
Montage automatique
Pour monter des partages SMB automatiquement au démarrage de la machine, on peut le faire de plusieurs façons :
1/ Dans le fichier fstab
2/ Via systemd
3/ Via autofs (non traité dans cet article)
Je préfère la solution systemd, cependant je vous montre les 2 méthodes.
Montage auto via le fichier fstab
Il est possible de paramétrer le fichier /etc/fstab pour réaliser le montage automatique des partages.
Pour ne pas que les identifiants soient en clair dans le fichier fstab, on peut créer un fichier dans lequel stocker les identifiants. Je créé généralement ce fichier sur mes serveurs dans /root :
Code BASH :
vim /root/.credentials
Voici le contenu :
Code :
username=linuxtricksuser
password=Linuxtrickspass123
domain=WORKGROUP
Ensuite, on édite le fichier /etc/fstab, et on y place la ligne suivante :
Code BASH :
//192.168.21.25/linuxtricks /mnt/linuxtricks cifs credentials=/root/.credentials,iocharset=utf8,_netdev 0 0
L'option credentials= infique le fichier contenant les infos d'identfication
L'option iocharset= indique le jeu de caractères à utiliser
L'option _netdev indique d'attendre que le réseau soit opérationnel pour monter le partage
Pour démonter le partage si nécessaire, on utilisera la commande umount :
Code BASH :
umount /mnt/linuxtricks
Montage auto via une unité systemd
La méthode que je préfère car elle fonctionne à tous les coups est de réaliser un montage avec une unité systemd.
On utilisera l'unité de type .mount qui est prévue à cet effet.
Pour ne pas que les identifiants soient en clair dans l'unité systemd, on peut créer un fichier dans lequel stocker les identifiants. Je créé généralement ce fichier sur mes serveurs dans /root :
Code BASH :
vim /root/.credentials
Aussi, cela permet de ne pas modifier l'unité si le mot de passe est changé.
Voici le contenu :
Code :
username=linuxtricksuser
password=Linuxtrickspass123
domain=WORKGROUP
Le nom de l'unité qu'on créera dans /etc/systemd/system doit avoir le nom du point de montage (les / remplacés par des -) comme par exemple :
Code BASH :
vim /etc/systemd/system/mnt-linuxtricks.mount
Voici le contenu :
Code :
[Unit]
Description=Montage Linuxtricks
Requires=network-online.target
After=network-online.service
[Mount]
What=//192.168.21.25/linuxtricks
Where=/mnt/linuxtricks
Type=cifs
Options=credentials=/root/.credentials,iocharset=utf8
[Install]
WantedBy=multi-user.targe
La section Unit permet d'avoir une description et surtout d'attendre que tous les éléments réseaux soient opérationnels
La section Mount indique quoi monter, où, le protocole et les options.
On recharge ensuite le démon systemd :
Code BASH :
systemctl daemon-reload
On active l'unité pour que le système de fichiers soit monté au démarrage et on démarre l'unité au passage :
Code BASH :
systemctl enable --now mnt-linuxtricks.mount
Pour démonter le partage si nécessaire, on arrêtera l'unité.