Monter un disque sur Linux avec systemd (et sans fstab)

monter un disque avec systemd

Pour monter un disque au boot d’une machine sur Linux, on utilise régulièrement fstab. Cette solution fonctionne très bien, mais elle a quand même un gros inconvénient. Si le disque n’est pas disponible pour une raison ou une autre, la machine ne boot plus et des manipulation sont nécessaires pour procéder au démarrage. Après quelques recherches, j’ai trouvé qu’il était possible de monter un disque via systemd. Je vous montre comment

Identifier le disque à monter

Avant toute chose nous allons commencer à identifier le disque à monter. Pour cela deux solutions, le chemin qui mène au disque, ou son uudi (Universally Unique IDentifier). Note : Le disque doit être formaté

Première solution, lister les disques dans le répertoire /dev/

Deuxième solution, via l’uuid en listant le contenu du répertoire /dev/disk/by-uuid/

ou en utilisant lsblk -f

Une fois le disque identifié, ici sda, nous pouvons continuer

Créer le fichier de montage pour systemd

Nous allons maintenant créer le fichier pour donner les instructions à systemd.

Attention, il y a une petite subtilité dans le nommage. Le nom du fichier doit correspondre à l’emplacement du montage. Un tiret correspond à un sous répertoire. Il est donc interdit de mettre des tirets dans le nom du point de montage.

Par exemple, si vous souhaitez monter votre disque à l’emplacement /home/USER/montage le nom de fichier sera home-USER-montage.mount. Pour /media/mon_montage cela donne media-mon_montage.mount.

vi /etc/systemd/system/media-mon_montage.mount

Voici un exemple de fichier. Ici j’ai utilisé l’uuid du disque sda.

[Unit]
Name = Un joli nom
Description = Une description, si vous voulez
[Mount]
What = /dev/disk/by-uuid/66989f09-73a0-460a-a681-6b4f396b7b28
Where = /media/mon_montage
Type = ext4
Options = defaults

[Install]
WantedBy = multi-user.target

Notez qu’il existe différentes options :

What : Chemin absolut du périphérique
Where :
Chemin absolut du point de montage
Type :
Chaine de caractères correspondant au système de fichier utilisé (optionnel)
Options :
Options de montage lors du montage, séparées par des virgules (optionnel)
DirectoryMode :
Spécifie le monde d’accès au système de fichiers utilisé. Valeur par défaut 0755 (optionnel)
TimeoutSec :
Temps en seconde pendant laquelle la commande peut s’exécuter. Une fois le délais passé elle est concidérée comme un echec. Valeur par défaut 60s (optionnel)
KillMode :
Spécifie comment les processus de ce montage doivent être tués. Options suivantes : control-group, process-group, process, none. (optionnel)

Pour plus d’informations, vous pouvez vous reporter à la page man de Debian.

WantedBy=multi-user.target indique que l’unité de montage doit être démarrée automatiquement et considérée comme une dépendance de la cible multi-user.target.
multi-user.target est une cible systemd qui correspond à un niveau d’exécution multi-utilisateur sans interface graphique. En pratique, cela signifie que votre point de montage sera activé et prêt à l’emploi au démarrage du système, lorsqu’il atteint ce niveau d’exécution multi-utilisateur.

Plus d’informations sur la page man dédiée.

Enable & Start le montage systemd

Maintenant que nous avons indiqué toutes les informations dans /etc/systemd/system/media-mon_montage.mount, nous pouvons maintenant enable pour que le montage soit fait automatiquement au boot.

sudo systemctl daemon-reload
sudo systemctl enable media-mon_montage.mount
sudo systemctl start media-mon_montage.mount
sudo systemctl status media-mon_montage.mount

daemon-reload : Recharge tous les « unit files » et recrée l’arbre de dépendance
enable : Active l’exécution du service au démarrage
start : Démarre le service
status : Affiche l’état du service

On peut voir que tout c’est bien déroulé (dans un soucis de praticité j’ai utilisé l’utilisateur root)

Vérifions que notre disque est correctement monté :

On peut constater que le disque sda est bien monté à l’emplacement /media/mon_montage. Nous avons donc correctement monté notre disque en nous passant de fstab en utilisant systemd.

Notez cet article

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Articles de la même catégorie

gestion des utilisateurs sur linux

Gestion des utilisateurs sur Linux

La gestion des comptes utilisateurs est l’un des nombreux défis que doivent relever les administrateurs système Linux. Parmi les responsabilités d’un administrateur système figurent l’activation/désactivation

Lire plus »
Retour en haut