Le problème
Sous /etc/systemd/system le fichier d'unité de montage a été créé avec le nom "test.mount". Le répertoire de point de montage créé est /home/test. Sous les options de fichier d'unité de montage dans "Où= ” le point de montage configuré est /home/test. Le périphérique sur lequel le système de fichiers sera monté est /dev/xvdb1 et il a été défini sous "What= " option. Lors de la configuration du fichier d'unité de montage pour monter un système de fichiers, il échoue avec l'erreur suivante :
# systemctl start test.mount Failed to start test.mount: Unit is not loaded properly: Invalid argument. See system logs and 'systemctl status test.mount' for details.
# systemctl status test.mount ● test.mount - Test Mount Units Loaded: error (Reason: Invalid argument) Active: inactive (dead) Where: /home/test What: /dev/xvdb1
Le fichier /var/log/messages affiche les mêmes erreurs :
Mar 20 15:34:19 [vm_name] systemd: test.mount's Where= setting doesn't match unit name. Refusing.
La solution
L'unité de montage sous /etc/systemd/system a un nom de fichier d'unité de montage incorrect. Selon la page de manuel systemd.mount :
# man systemd.mount ... Where= Takes an absolute path of a directory of the mount point. If the mount point does not exist at the time of mounting, it is created. This string must be reflected in the unit filename. (See above.) This option is mandatory.
La section ci-dessus dans les pages de manuel montre - Les unités de montage doivent être nommées d'après les répertoires de points de montage qu'elles contrôlent. Exemple :le point de montage /home/john doit être configuré dans un fichier unité home-john.mount. Remarque importante le caractère "/" doit changer comme "-"
Modifiez le nom de l'unité de fichier de montage pour corriger le nom à partir de :test.mount vers home-test.mount . Testez à nouveau pour monter l'unité de montage.
# systemctl start home-test.mount # mount | grep test /dev/xvdb1 on /home/test type ext4 (rw,relatime,seclabel,data=ordered)