Si uso este comando:
mount -t xfs -o noatime,nodiratime,logbufs=8 -L d1 /srv/node/d1
Todo funciona correctamente. Pero si intento montar a través del systemd
montaje, falla.
He creado un archivo /etc/systemd/system/mnt-d1.mount
con el siguiente contenido:
[Unit]
Description = Disk 1
[Mount]
What = LABEL=d1
Where = /srv/node/d1
Type = xfs
Options = noatime,nodiratime,logbufs=8
[Install]
WantedBy = multi-user.target
Después de eso ejecuto estos comandos:
systemctl daemon-reload
systemctl start mnt-d1.mount
El último me mostró:
Failed to start mnt-d1.mount: Unit mnt-d1.mount failed to load: Invalid argument.
See system logs and 'systemctl status mnt-d1.mount' for details.
systemctl status mnt-d1.mount
me mostró:
May 16 18:13:52 object1 systemd[1]: Cannot add dependency job for unit mnt-d1.mount, ignoring: Unit mnt-d1.mount failed to ...ectory.
May 16 18:24:05 object1 systemd[1]: mnt-d1.mount's Where= setting doesn't match unit name. Refusing.
Ayúdame a montar un disco a través de una systemd
unidad de montaje.
Respuestas:
El mensaje de error explica la causa:
aunque entender ese mensaje requiere leer varias páginas de manual.
Por
systemd.mount
página de manual (enfatice la mía):La parte "ver arriba" es:
OK, la
systemd.unit
página del manual dice que:apuntando a la
systemd-escape
página de manual que explica cómo hacerlo:Entonces, en su caso, se
/srv/node/d1
traduce ensrv-node-d1.mount
fuente
\x2d
escape de estilo C , que cuando se usa para crear el archivo de la unidad puede (dependiendo de su shell / editor) necesitar escapar nuevamente del carácter de barra, por lo que el montaje del archivo de la unidad/some-path
puede requieren correredit some\\x2dpath.mount
share-name
. Renombrarloshare_name
resolvió el problema.