问题描述
在较旧的Ubuntu版本中,您可以通过进入~/.gvfs/
目录访问与Nautilus一起安装的SMB共享。我发现它非常方便,因为我喜欢使用Nautilus来挂载共享,但是使用命令行执行所有磁盘操作(copy,mv,find等)。
我现在有Ubuntu 13.04,即使我可以挂载共享并使用它与Nautilus(我从未使用过),我无法找到实际的挂载点。它还在某个地方吗?还是被抛弃了?我能把它拿回来吗?
我知道我可以使用CIFS和/etc/fstab
挂载共享,但我宁愿使用用户空间。这样,当我安装新系统或将我的家转移到另一台机器时,我的首选项(包括凭据)保留在我的主目录中,我不需要担心更新fstab。
另外,我不想用sudo手动挂载它(使用sudo mount -t cifs ...
)。是的,我可以创建一个别名或脚本,但是我必须每次都输入我的密码或将我的密码存储在凭证文件中。然后输入sudo密码。然后每次遇到新的共享时,我都需要记住如何创建凭证文件。所以,是的,我可能最终得到这个解决方案,但如果可能的话,我宁愿不改变我现在的习惯。
此外,还有其他用户的问题,我经常提供简单的命令行解决方案。在13.04,这已不再可能(例如,因为我提供解决方案的用户不允许在他们的计算机上安装sudo)。
无论如何,我很好奇gvfs发生了什么以及为什么我看不到挂载的目录。
最佳解决方法
在较新的版本中,gvfs user-mounts被移动到/run文件系统
/run/user/<username>/gvfs
见为什么我的gvfs挂载不会显示在〜/.gvfs或/run/user/<login>/gvfs下?
[未标记为重复,因为答案尚不清楚]
如果你想保留旧的链接/脚本等,就行了
rmdir ~/.gvfs/
ln -s /run/user/<username>/gvfs ~/.gvfs
次佳解决方法
你也可以使用mount in例如/mnt Like手动挂载它
sudo mount -t cifs -o user=foobar,password=foobar,rw,hard,nosetuids,noperm,sec=ntlm //192.168.1.2/Drive ~/mnt/mount_point
(来自How can I mount cifs shares in (k)ubuntu 13.04?)
第三种解决方法
在15.04,15.10和此时16.04(尚未发布)中,gvfs包中存在已确认的错误:
https://bugs.launchpad.net/ubuntu/+source/gvfs/+bug/1451087
这阻止了
/run/user/<userId>/gvfs
像预期的那样工作。此刻的解决方法是在尝试安装之前首先杀死两个gvfs deamons。
为此,只需执行命令:
killall gvfsd
您之后所做的任何链接都可以通过gvfs目录再次访问。
参考资料