是否可以自动挂载sshfs

在实例化正确的VPN连接时,是否可以使用sshfs自动挂载远程FS?

请允许我解释一下这个场景,我正在远程工作,如果我可以从办公室的服务器上安装我的家庭目录,那将有所帮助。 要做到这一点,我需要vpn in。所以在网络管理器中我选择相关的VPN并连接。 它连接但现在我必须放到命令行并在几台机器上安装我的主目录。

如果我忘了做一台机器,我的本地开发环境效率不高。 我想我可以编写一个快速的bash脚本来执行此操作,但我宁愿让它在连接时自动运行。

使用查找连接的UUID

$ nmcli con 

请注意,这不仅列出了物理连接,还列出了定义的无线连接(SSID)。

/etc/NetworkManager/dispatcher.d/目录中放一些这样的简单脚本:

 #!/bin/bash # Specify your connection UUID you like to trigger on below. MYCON_UUID=397bdb70-2a89-415e-b3e9-09ca0b704fc1 if [ "$CONNECTION_UUID" == "$MYCON_UUID" ] then # do your scripting you need to do here: mount -t sshfs ... fi 

不要忘记设置正确的权限使其成为可删除的(即chmod +x trigger-sshfs-on-vpn.sh trigger-sshfs-on-vpn.sh)。 它可以是任何类型的脚本,Bash脚本可能足以满足您的需要。

NetworkManager只执行此目录中的所有脚本,提供可用于编写脚本的一些环境变量。 在这种情况下,您可能只需要CONNECTION_UUID

使用autofs。

Autofs将自动挂载一个文件夹,当某人或某物在您的系统上访问它时,该文件夹被配置为挂载点。

挂载点可以是通过sshfs的远程主机以及任意其他挂载点,例如:

  • 桑巴
  • NFS
  • NTFS

这是一个很好的方法