在较旧的 Ubuntu 版本中,您可以通过进入目录来访问使用 Nautilus 安装的 SMB 共享~/.gvfs/
。我发现这非常方便,因为我喜欢使用 Nautilus 来安装共享,但使用命令行执行所有磁盘操作(复制、mv、查找等)。
我现在有 Ubuntu 13.04,尽管我可以挂载共享并将其与 Nautilus(我从未使用过)一起使用,但我找不到实际的挂载点。它还在某处吗?还是已经被废弃了?我可以找回它吗?
我知道我可以使用 CIFS 和 挂载共享/etc/fstab
,但我更愿意使用用户空间。这样,当我安装新系统或将我的主目录转移到另一台机器时,我的首选项(包括凭据)会保留在我的主目录中,我无需担心更新 fstab。
另外,我不想使用 sudo (使用sudo mount -t cifs ...
) 手动挂载它。是的,我可以创建一个别名或脚本,但这样我就必须每次都输入密码或将密码存储在凭证文件中。然后输入 sudo 密码。然后每次遇到新共享时,我都需要记住如何创建凭证文件。所以是的,我可能会采用这个解决方案,但如果可能的话,我宁愿不改变我现在的习惯。
此外,对于其他用户的问题,我经常提供一个简单的命令行解决方案。在 13.04 中,这不再可能(例如,因为我向其提供解决方案的用户不允许在他们的机器上使用 sudo mount)。
无论如何,我很好奇 gvfs 发生了什么以及为什么我看不到已挂载的目录。
答案1
在 13.04 中,gvfs 用户挂载被移至 /run 文件系统
/run/user/<username>/gvfs
看为什么我的 gvfs 挂载没有出现在 ~/.gvfs 或 /run/user/<login>/gvfs 下?
[未标记为重复,因为那里的答案不清楚]
如果你想保留旧链接/脚本等,只需这样做
rmdir ~/.gvfs/
ln -s /run/user/<username>/gvfs ~/.gvfs
更新:gvfs 已被弃用,使用' gio mount
'相反。现在 smb 挂载位于 $XDG_RUNTIME_DIR/gvfs。
答案2
您也可以使用 mount 手动挂载它,例如 /mnt
sudo mount -t cifs -o user=foobar,password=foobar,rw,hard,nosetuids,noperm,sec=ntlm //192.168.1.2/Drive ~/mnt/mount_point
答案3
在 15.04、15.10 以及目前的 16.04(尚未发布)中已确认的错误在 gvfs 包中,这可以防止
/run/user/<*userId>*/gvfs
按照预期工作。此时的解决方法是先终止两个 gvfs 守护进程,然后再尝试挂载。
为此,只需执行以下命令:
killall gvfsd
此后您建立的任何链接都可以再次通过 gvfs 目录访问。