我发现实现此目的的最简单方法是为该进程创建一个小脚本并将其添加到启动应用程序列表中。将这两行添加到文本文件中,并将其保存在您会记住的地方,例如 sshfs.sh,然后将其添加到启动中。
#! /bin/bash
sshfs <host>@<ip>: ~/<mountpoint>
Run Code Online (Sandbox Code Playgroud)
请务必在启动脚本之前创建该文件夹,否则它将无法安装您要连接的文件系统。挂载点可以是您想要的任何位置,我只是在我的主文件夹中创建它。
因此,如果 sshfs 可以在 /etc/fstab 中列出(我相信可以),那么 mountall 将在网络设备启动时挂载它。问题是当网络设备宕机时,你需要卸载它。这对于像 /etc/init/sshfs-down.conf 这样的新贵工作来说是可行的:
# sshfs-down
start on net-device-down IFACE!=lo
task
exec umount /path/to/sshfs/mount
Run Code Online (Sandbox Code Playgroud)
可能会出现一个问题,即 sshfs 可能会尝试在卸载时刷新缓冲区,并且当网络设备已经关闭时,您将遇到问题。