如果我有一个通过 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
运行的选项curlftps
。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