fuse:错误的挂载点“/mnt”:传输端点未连接

fuse:错误的挂载点“/mnt”:传输端点未连接

我需要在我的服务器上本地编辑远程文件,因此我尝试使用 SSHFS 在本地系统上挂载整个远程文件系统(/),如下所示:

 $ sshfs [email protected]:// /mnt -p 22

然后就卡住了(光标闪烁,无输出),所以很明显我用Ctrl+取消了它C

此后,挂载点文件夹/mnt变得无法使用、无法访问(您随便说),并且在我尝试访问它时不断返回此错误消息:

fuse: bad mount point `/mnt': Transport endpoint is not connected

它在父文件夹中呈现出奇怪的外观:

$ ls -l /
...
d?????????   ? ?    ?        ?            ? mnt`
...

我该如何解决错误并恢复正常?

我应该怎么做才能使用 SSHFS?

答案1

1. 终止所有sshfs进程

  • 使用killall命令:

    killall sshfs
    

    或者选择性地:

  • 查找所有正在运行的sshfs进程:

    ps -ef | grep sshfs | grep -v grep
    

    假设有两个正在运行:

    $ ps -ef | grep sshfs | grep -v grep
    root     10906  5170  0 07:14 pts/0    00:00:00 sudo sshfs
    root     10907 10906  0 07:14 pts/0    00:00:00 sshfs 
    
  • 现在,全部杀死它们,或者通过它们的 PID 识别它们,有选择地杀死它们:

    sudo kill -9 10906 10907
    


2. 卸载挂载点

sudo umount -l /mnt


3. 进行编辑/etc/fuse.conf,以便不再遇到fuse: bad mount point `/mnt': Transport endpoint is not connected错误:

  • 使用你喜欢的编辑器以 root 身份打开它,例如

    sudo atom /etc/fuse.conf
    
  • 取消注释该user_allow_other行。
  • 保存并关闭。


4. 使用具有以下选项的 SSHFS:

sudo sshfs \
-d \
-o allow_other \
-o reconnect \
-o ServerAliveInterval=15 \
[email protected]:/ /mnt \
-p 12345 \
-C
  • -d打开调试模式(提供更多输出)
  • -o代表“选项”
  • -p允许您指定端口号
  • -C开启压缩

资料来源:

答案2

还有另一种方法。尝试一下:

$ fusermount -u /mnt

相关内容