无法通过 FSTAB 挂载 SSHFS,但可以通过 CLI 挂载。如何让 FSTAB 正确挂载?

无法通过 FSTAB 挂载 SSHFS,但可以通过 CLI 挂载。如何让 FSTAB 正确挂载?

我已经设置了无密码 SSH 访问,并且它工作正常。我无法自动挂载我的 SSHFS。

这有效:

sshfs [email protected]:/vmfs/volumes/ESATA01/ ~/VPS

但是,当插入我的 FSTAB 时,我的登录用户会得到此信息

sshfs#[email protected]:/vmfs/volumes/ESATA01/   /home/amahi/VPS      fuse defaults,idmap=user 0 0

在此处输入图片描述

我肯定遇到了权限问题,因为这里与挂载点的位置有关。似乎当我从 CLI 执行原始 fuse 挂载时,我是以非 sudo 登录用户的身份执行的。如果我从 fstab 挂载,则以 sudo 身份执行。

如果我以 sudo 身份运行 nautilus,我就能获取 SSHFS 的内容。

任何意见都值得赞赏。

答案1

也许更优雅的方法是告诉 mount:

  • 该挂载点是一个网络设备(因此可以检查它)
  • 此挂载点不应自动挂载,而应按需挂载

例子:

me@svr:/movies  /MOUNTPOINT  fuse.sshfs noauto,x-systemd.automount,_netdev 0 0

https://wiki.archlinux.org/index.php/Sshfs

答案2

根据 Eric 的回复,我需要将“allow_other”添加到我的 FSTAB 条目中。完成此操作后,我能够正确挂载;但是,它在重新启动时无法正常工作。

我发现,由于网络启动的时间,我需要创建一个延迟机制。我还需要将 _netdev 参数添加到我的 FSTAB 条目的末尾。

我发现以下内容这里

If the automatic mounting procedure following a reboot is not successful, it may be because the drive is not yet ready when executing “fstab”.  To remedy this, please just enter the following lines in the file “/etc/rc.local” in front of the line “exit 0”:

sleep 20
mount -a

You can progressively reduce the value 20 until it is just sufficient to mount your Drive successfully after a reboot.

相关内容