Монтировать внешний диск через curlftps как службу

Монтировать внешний диск через curlftps как службу

Если у меня есть внешний диск, к которому я получаю доступ через FTPS, как мне добавить службу systemctl для его монтирования и размонтирования и заставить его монтироваться при запуске? Я уже видел несколько примеров со скриптами и crontab, но они показались мне слишком непоследовательными и сложными для понимания.

решение1

Создайте каталог, в который вы хотите смонтировать диск.

mkdir /mnt/ftp-drive

Создайте файл /etc/systemd/system/external-ftp.serviceсо следующим содержимым (ваш systemd/systemкаталог может находиться в другом месте):

[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опцию make curlftpsrun as daemon. ExecStartи ExecStopнужен полный путь к командам, то есть обратите внимание на полный путь к curlftpsи fusermount. В вашем случае может быть по-другому, найдите полный путь с помощью sudo find / -name curlftps -type f.

Теперь вам просто нужно запустить службу.

sudo service external-ftp start

Если все в порядке, вы сможете получить доступ /mnt/ftp-driveи команда sudo service external-ftp statusдолжна вернуть результат OK.

Если все в порядке, активируйте службу для запуска при загрузке:

sudo systemctl enable external-ftp

Связанный контент