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


12

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

sshfs user@remote: ~/Mounts/Remote

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

如果尝试卸载使用

fusermount -u ~/Mounts/Remote

我不能这样做是因为:

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

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

如何避免这种情况并解决此问题(Arch Linux)?


killall -KILL sshfs,下一次使用此答案中的安装选项进行安装。
Totor

Answers:


12

我在Ubuntu Linux中遇到相同的问题。简历后我该怎么做:

$ killall -9 sshfs

然后,umount

$ fusermount -u ~/far_projects

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

$ sshfs -o idmap=user youruser@server:/projects ~/far_projects

谢谢。我换成killallkillall -9
Yotam

1
我建议为一个或两个以上的脚本编写脚本。它使生活变得更加轻松。
亚历克斯·希尔泽

同样适用于macOS。
湿婆神


2

我在笔记本电脑上遇到了同样的问题。

您需要做的就是在您的unmount命令中包括lazy unmount选项(z):

$ fusermount -uz ~/Mounts/Remote

然后,以通常的方式重新安装。

另外,值得注意的是,我使用了reconnect选项(-o reconnect),它将通过任何打maintain(例如合上盖子并在几分钟后返回)来维持连接。

您还可以研究诸如afuse之类的解决方案,该解决方案是用于保险丝文件系统的自动安装程序(包括sshfs),可以避免每次都需要进行卸载/重新安装的麻烦。

最后一种自动安装选项是将autofs与sshfs一起使用

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.