睡眠后(或连接丢失时)无法访问 sshfs 挂载的文件夹

Yot*_*tam 13 linux mount arch-linux sshfs

通常,当我通过 ssh 挂载文件系统时:

sshfs user@remote: ~/Mounts/Remote
Run Code Online (Sandbox Code Playgroud)

如果我唤醒机器,机器将休眠(关闭笔记本电脑盖),我无法访问安装的文件夹。此外,如果我尝试ls在父文件夹中,终端会冻结。当连接以某种方式丢失时也会发生同样的情况。

如果尝试卸载使用

fusermount -u ~/Mounts/Remote
Run Code Online (Sandbox Code Playgroud)

我不能这样做,因为:

fusermount: 无法卸载 /home/yotama9/Mounts/Remote: 设备或资源繁忙

我试图杀死 ssh,但我无法再次挂载该文件夹。ls在文件夹中仍然冻结。

我怎样才能避免这种情况并解决这个问题(Arch Linux)?

小智 14

我在 Ubuntu Linux 中遇到了同样的问题。简历后的工作:

$ killall -9 sshfs
Run Code Online (Sandbox Code Playgroud)

然后,卸载

$ fusermount -u ~/far_projects
Run Code Online (Sandbox Code Playgroud)

并再次挂载远程文件系统。

$ sshfs -o idmap=user youruser@server:/projects ~/far_projects
Run Code Online (Sandbox Code Playgroud)


cer*_*cem 6

如前所述这里,这是您的解决方案:

 -o reconnect,ServerAliveInterval=15,ServerAliveCountMax=3
Run Code Online (Sandbox Code Playgroud)

作为示例用法:https://github.com/aktos-io/dcs-tools,看看make mount-root目标。