在 vpn-up 和 vpn-down 上自动挂载/卸载 sshfs

在 vpn-up 和 vpn-down 上自动挂载/卸载 sshfs

这个问题真的让我很沮丧。我有以下脚本用于在 vpn 连接 (vpn-up) 和 vpn-down 上挂载/卸载 sshfs。我在 /etc/NetworkManager/dispatcher.d/ 目录中有此脚本。当我手动运行脚本说“sudo mount-on-vpn asdf vpn-up”时,它运行良好。但每当 NetworkManager 想要运行它时,它都会失败,系统日志会显示“脚本以错误 -1 退出”。我对其进行了一点调试,发现它在“sshfs username@host:....”中失败。我很确定选项是正确的,因为当我在控制台上运行相同的命令(通过复制/粘贴)时,它可以正常工作。

知道这里可能出了什么问题吗?

目录 /media/host-common 和 /meidia-home 均归用户名所有,并设置为 777 作为权限。

#!/bin/sh -e
if [ -z "$1" ]; then
    echo "$0: called with no interface" 1>&2
    exit 1;
fi

logger "Looking at case"

case "$2" in
    vpn-up)
    logger "Inside vpn-up"
    sshfs username@host:/home/common   /media/host-common
    sshfs username@host:/home/username /media/host-home
    logger "Mounted all drives"
;;
    vpn-down)
    logger "Inside vpn-down"
    fusermount -u /media/host-common
    fusermount -u /media/host-home
    logger "Unmounting all drives"
;;
    *)
    logger "Inside *"
    echo "$0: called with unknown action \`$2'" 1>&2
    logger "Exiting"
exit 1
;;
esac

相关内容