Смонтировать внешний диск через curlftps как услугу
Если у меня есть внешний диск, к которому я обращаюсь через FTPS, как я могу добавить службу systemctl для его монтирования и размонтирования, а также для его монтирования при запуске? Я уже видел несколько примеров со скриптами и crontab, но они показались мне слишком бессвязными и сложными в использовании.
1 ответ
Создайте каталог, в который вы хотите смонтировать диск
mkdir /mnt/ftp-drive
Создайте сейчас файл
/etc/systemd/system/external-ftp.service
с этим содержанием (вашим
systemd/system
dir может находиться в другом месте):
[Unit]
Description=Mount FTP Space
Wants=network-online.target
After=network-online.target
[Service]
Type=simple
ExecStart=/usr/bin/curlftpfs -o ssl,no_verify_peer,nonempty,user=<user>:<pass> <host> /mnt/ftp-drive/ -f -v
ExecStop=/bin/fusermount -u /mnt/ftp-drive
[Install]
WantedBy=multi-user.target
Обратите внимание
-f
возможность запустить как демон.
ExecStart
а также
ExecStop
нужен полный путь команд, то есть обратите внимание на полный путь
curlftps
а также
fusermount
. В вашем случае может быть иначе, найдите полный путь с помощью
sudo find / -name curlftps -type f
.
Теперь вы просто запускаете службу
sudo service external-ftp start
если все в порядке, вы должны иметь доступ
/mnt/ftp-drive
и команда
sudo service external-ftp status
должно вернуться ОК.
Если все в порядке, активируйте службу для запуска при загрузке:
sudo systemctl enable external-ftp