无法 cd 进入 samba 位置(在 Windows 共享位置)

Tot*_*.js 9 server windows samba

我无法cd像往常一样进入桑巴舞:

cd smb://server/folder
Run Code Online (Sandbox Code Playgroud)

它说: "bash: cd: smb/..." No such file or directory.

但是如果在 nautilus 中我转到该文件夹​​并右键单击它,则属性中显示的位置是:

smb://server/folder
Run Code Online (Sandbox Code Playgroud)

为什么这不起作用?谢谢

小智 10

程序“cd”只能导航到挂载到本地 VFS 的目录中,并且以“smb://”开头的 URI 描述了远程资源。为了 cd 进入 SMB 共享,您必须安装它。

在您的情况下,听起来 SMB 共享已安装并可从 nautilus 访问。这意味着 SMB 共享已安装在本地 VFS 中的某个位置。

在 Ubuntu 15.04 中,我相信 SMB 共享(至少是您使用 nautilus 连接的共享)的默认挂载点是:

/run/user/$UID/gvfs/smb:host=$SERVER_NAME
Run Code Online (Sandbox Code Playgroud)

因此,请尝试:

$ cd  /run/user/$UID/gvfs/smb:host=server/path/to/file.txt
Run Code Online (Sandbox Code Playgroud)

编辑:要对此进行更深入的解释,这里有一个关于 unix stackexchange 的类似问题,有一些很好的答案


dev*_*av2 1

cd smb://server/folder您不能仅从终端使用。

要从终端访问该文件夹,您需要mount首先访问该文件夹。

sudo mkdir /mnt/server

sudo mount -t cifs //remote/folder /mnt/server -o username=user uid=name
Run Code Online (Sandbox Code Playgroud)

或者只需键入smbclient //hostname/folder并键入用户名/密码。成功登录后,您将能够访问文件夹。


Fra*_*que 0

smb 协议不能像这样使用bash。如果你想使用它,你必须使用命令挂载 smb 共享mount,或者将其添加到你的 中/etc/fstab,例如(取自我的 fstab):

//server/smb-share /my/path/where/to/mount/it cifs guest,uid=1000,iocharset=utf8,codepage=unicode,unicode 0 0