[Linux] Monter un partage NAS sur Linux

Drthrax74

Chevalier Jedi
1 Janvier 2021
468
107
83
Bonjour à tous,

Pour permettre l'accès au donnée du NAS depuis un environnement Linux, on peut réaliser un montage de partage depuis le gestionnaire de service SystemD ce qui permet de rendre visible dans l'explorateur de fichier le nom du partage.

Etape 0: Récupérer l'UID et le GID du compte utilisateur
Bash:
id

Etape 1: Passer en Root
Bash:
sudo -i

Etape 2: Credentials
Le fichier Credentials, contiendra les identifiants de connexion au NAS. (On peut en crée plusieurs en cas d'utilisation de plusieurs compte)
Remplir le champs Username et Password.
Bash:
# Création du dossier secret
mkdir /etc/credentials;

# Création du fichier .smbpassword:
echo "username=
password=
domain=
vers=3.0
file_mode=0777
dir_mode=0777
workgroup=WORKGROUP
_netdev" > /etc/credentials/.smbpassword;

# Edition du fichier avec nano:
nano /etc/credentials/.smbpassword;

# Edition des permissions (Propriétaire: RW uniquement)
chmod 600 /etc/credentials/.smbpassword;


Etape 3: Définir le chemin d'accès local
Le chemin définira le nom du service SystemD, c'est obligatoire.
Dans l'explorateur l'accès utilise les / pour se déplacer dans l'arborescence. (Exemple: /mnt/Home)
Pour SystemD les / deviennent des - pour le nom du service. (mnt-Home.mount)
Ensuite si on veut des majuscules dans le chemin, il faudra respecter l'écriture qu'on à définit dans le nom du dossier mais aussi sur le service.

Exemple:
Bash:
# Création du Dossier
mkdir /mnt/Download

# Nom du service
mnt-Download


Etape 4: Crée le service Mount
- x-gvfs-show: Afficher le montage dans l'interface graphique Linux
- What: Chemin du partage (<IP NAS>/<NOMDEMONPARTAGE>)
- Where: Chemin Local
- uid: Utilisateur qui aura les permissions
- gid: Groupe principale de l'utilisateur qui aura les permissions.
- Le nom du fichier en sortie est à modifier (/etc/systemd/system/mnt-XXXXX.mount)

Bash:
echo "[Unit]
  Description=Montage du partage XXXXX
  Requires=network-online.target
  After=network-online.service

[Mount]
  What=//192.168.1.X/XXXXX
  Where=/mnt/XXXXX
  Type=cifs
  TimeoutSec=5s
  Options=credentials=/etc/credentials/.smbpassword,x-gvfs-show,uid=1000,gid=984

[Install]
  WantedBy=multi-user.target" > /etc/systemd/system/mnt-XXXXX.mount;


Etape 5: Gestion du service
Bash:
# Recharger la liste des services:
systemctl daemon-reload;

# Démarrer le service (Stop & Start)
systemctl restart mnt-XXXXX.mount

# Vérifier le status du service
systemctl status mnt-XXXXX.mount

# Activer le service si aucune erreur
systemctl enable mnt-XXXXX.mount

# Désactiver le service si une erreur
systemctl disable mnt-XXXXX.mount

Etape 6: Paquet Nécessaire
Les paquets suivants sont nécessaire sur un environnement Linux.
Code:
sudo apt install -y samba; # Serveur
sudo apt install -y cifs-utils; # Prise en charger de CIFS
sudo apt install -y smbclient; # Client SMB
 
Dernière édition: