No debian 8. Eu tenho uma unidade de compartilhamento cifs montada via systemd:
$ cat /etc/systemd/system/external_dir.mount
[Unit]
Description=cifs mount script for /external_dir/
Requires=network-online.target
After=network-online.service
[Mount]
What=***
Where=***
Options=username=***,password=***
Type=cifs
Restart=on-failure
[Install]
WantedBy=multi-user.target
No entanto, quando a máquina remota é reinicializada (por exemplo, devido a uma falha de energia), systemd
não remonta a unidade, mesmo que mostre o status como com falha:
$ sudo systemctl status external_dir.mount
● external_dir.mount - cifs mount script for /external_dir/
Loaded: loaded (/etc/systemd/system/external_dir.mount; enabled)
Active: failed (Result: exit-code) since Thu 2017-04-13 04:12:16 ACST; 6h ago
Where: /external_dir
What: ***
Process: 413 ExecMount=/bin/mount -n *** /external_dir -t cifs -o username=***,password=*** (code=exited, status=32)
Apr 13 04:12:16 bob mount[413]: mount error(115): Operation now in progress
Apr 13 04:12:16 bob mount[413]: Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)
Apr 13 04:12:16 bob systemd[1]: external_dir.mount mount process exited, code=exited status=32
Apr 13 04:12:16 bob systemd[1]: Failed to mount cifs mount script for /external_dir/.
Apr 13 04:12:16 bob systemd[1]: Unit external_dir.mount entered failed state.
Se eu reiniciar o serviço manualmente ( sudo systemctl restart external_dir.mount
), ele voltará a funcionar perfeitamente.
Como posso fazer com que o systemd remonte a unidade cifs quando ela estiver disponível novamente? Observe que às vezes a máquina remota fica desligada por horas, pois há falta de energia à noite e não a ligamos novamente até de manhã.