我的同事有一台台式计算机,/home
在我们的文件服务器上共享。我已经开发了一个Perl脚本,用于sshfs
-将某个目录安装在另一个SSH主机上,该主机可以在我的笔记本电脑上正常工作。
在他的计算机上,脚本最后未能卸载,sshfs
并使安装点不干净。除了重新启动之外,我没有找到任何恢复安装点的方法。经过一些测试,我发现我们的设置之间的区别在于他/home
在NFS上。在他的/tmp
作品中完美无瑕。
挂载后,在脚本操作期间一切正常。但是在终止sshfs
进程时<defunc>
,ps
直到父进程(Perl脚本)退出之前,该进程都被列为“ by” 。在sshfs
外壳上运行原始命令时,仍然会出现问题。
ls -dl
挂载点的输出如下所示(记住-我手边没有shell输出的真实副本):
? 1 ? ? 4096 Feb 9 15:37 file_archive/
(对于大多数信息,只有问号,至少是所有权限详细信息)
sshfs挂载仍然按列出,mount
但是即使执行as ,卸载操作也会失败,并且错误权限被拒绝root
。
我搜索了Google,但只发现sshfs和NFS在运行网络文件系统方面有很多比较。如何在NFS目录中安全地进行sshfs装载/卸载?
umount
以非root用户身份运行时,普通用户必须失败。