我在我的电脑上使用 ubuntu 和 gnome。
当我打开文件浏览器时,在左侧栏上,我方便地看到一个名为“工作服务器”的文件夹。当我将鼠标悬停在该文件夹上时,会出现以下标题“smb://[电子邮件保护]“。如果我点击该文件夹,那么我就可以看到该文件夹的内容。一切都很棒。
所以现在当我打开终端/shell 时,我输入
cd smb://[email protected]
我收到错误消息,提示目录不存在。如何通过 shell/终端进入该目录?
答案1
您无法cd
在该共享中的原因是因为cd
它仅适用于本地文件系统*,您可以通过两种方式解决问题:
用于smbclient
浏览共享:
smbclient -U john //69.100.100.1/SHARENAME
或者mount -t cifs
如果您想在本地挂载共享,请注意挂载点必须作为文件夹存在:
sudo mount -t cifs -o user=john,iocharset=utf8,noperm //69.100.100.1/SHARENAME ~/shares/SHARENAME
确保你适应共享名以匹配您的环境。
如果您的登录名是 Active Directory 域的一部分,您可能需要将其名称添加到这些命令中,第二个命令的名称为:
sudo mount -t cifs -o user=YOURDOMAIN//john,iocharset=utf8,noperm //69.100.100.1/SHARENAME ~/shares/SHARENAME
* 这里的“本地”的含义并不简单,只要记住你不能在山本地远程 FS。
答案2
无耻地借用https://askubuntu.com/questions/101029/how-do-i-mount-a-cifs-share
终端命令是:
sudo mount -t cifs -o username=USERNAME,password=PASSWD //192.168.1.88/shares /mnt/share
请注意,您可能需要安装 cifs-utils
答案3
由于远程共享似乎已经挂载,因此无需再次挂载它(当然可以,但你想这样做吗?)。相反,你需要找到它被挂载在哪里。由于你使用的是 GNOME,所以很有可能它是作为gvfsd-保险丝。如果你不耐烦,就试着运行这个:
ls "/run/user/$(id -u)/gvfs"
并检查您是否可以看到已挂载共享的目录(您应该会看到类似 的内容smb-share:server=remote.server,share=remote-share-name
)。如果可以看到,则大功告成。:-)(请注意,id -u
或id --user
获取您的有效用户 ID — 一个整数。如果您事先知道,则可以放心地用它替换括号表达式)。
如果失败了,您可以运行findmnt
并查找列gvfs
中的条目FSTYPE
。它可能看起来像这样:
TARGET SOURCE FSTYPE OPTIONS
…
│ └─/run/user/1000/gvfs gvfsd-fuse fuse.gvfsd-fuse rw,nosuid,nodev,relatime,user_id=1000,group_id=1000
…
如果您看到这个,请检查(ls
)列中的路径TARGET
,在这种情况下/run/users/1000/gvfs
- 您应该能够在这里看到您已经安装的共享。
答案4
open 'smb://login:pass@ip/Folder'