我在笔记本电脑上运行 Lubuntu 16.04.1。在工作时,我用以太网电缆将其插入墙上。这样既可以访问互联网,又可以访问名为 cchfs ( smb://cchfs
) 的文件目录(可能是共享,或者是服务器,或者两者兼而有之?),该目录用作此处 Windows 机器上的映射网络驱动器。我可以通过打开 PCManFM、选择“前往”→“网络”,然后打开图标“Windows 网络”、“NPI_HRRP”、“CCHFS”(此处提示我输入登录详细信息)、“Root”来查看 cchfs 中的文件。
这一切都很好,但我希望能够在 zsh 中与这些文件交互,而不仅仅是 PCManFM,但我不知道该怎么做。我认为第一步,在使用 创建挂载点后sudo mkdir /media/cchfs
,是像这样挂载文件系统:
sudo mount -t cifs -o user=NPI_HRRP/KArfer smb://cchfs /media/cchfs
Mounting cifs URL not implemented yet.
但这会产生错误这个问题,也就是这个错误信息,看起来我需要用smb://cchfs
或 来//SOMETHING/cchfs
替换//cchfs/SOMETHING
。但我不知道应该用哪个,也不知道应该用什么SOMETHING
。我尝试了很多猜测,但只得到了相当神秘的错误信息。
编辑1:下列的这些说明在办公室的 Windows 机器上,我得到:
C:\Users\karfer>net use
New connections will be remembered.
Status Local Remote Network
-------------------------------------------------------------------------------
OK X: \\cchfs\root Microsoft Windows Network
The command completed successfully.
C:\Users\karfer>nslookup cchfs
Server: nsmcoint.medctr.ucla.edu
Address: 10.2.14.10
Name: cchfs.cch.ucla.edu
Address: 10.48.154.235
所以我尝试了:
sudo mount -t cifs -o user=NPI_HRRP/KArfer //10.48.154.235/cchfs /media/cchfs
其结果mount error(13): Permission denied
(-v
只是添加mount.cifs kernel mount options: ip=10.48.154.235,unc=\\10.48.154.235\cchfs,user=NPI_HRRP/KArfer,pass=********
)并且dmesg
:
[ 2734.297317] Status code returned 0xc000006d NT_STATUS_LOGON_FAILURE
[ 2734.297332] CIFS VFS: Send error in SessSetup = -13
[ 2734.297591] CIFS VFS: cifs_mount failed w/return code = -13
我也尝试过//10.48.154.235/root
代替//10.48.154.235/cchfs
,但没有任何改变。
我很确定我输入的密码是正确的。我的密码中有大写字母和感叹号。这mount
对 PCManFM 来说可能是一个问题,尽管这似乎不是问题?
编辑2KArfer
:如果我使用代替 ,我的凭证似乎会被接受NPI_HRRP/KArfer
。(无论我是否传入 似乎都没有什么区别domain=NPI_HRRP
。)但现在我得到了:
mount.cifs kernel mount options: ip=10.48.154.235,unc=\\10.48.154.235\cchfs,user=KArfer,pass=********
Retrying with upper case share name
mount.cifs kernel mount options: ip=10.48.154.235,unc=\\10.48.154.235\CCHFS,user=KArfer,pass=********
mount error(6): No such device or address
改变cchfs
一些其他的东西不会改变任何东西,除非我使用X$
代替cchfs
,我会Permission denied
再次得到。
编辑3:的输出为smbclient -W=NPI_HRRP -U=KArfer -L //CCHFS
:
WARNING: The "syslog" option is deprecated
Enter KArfer's password:
Domain=[NPI_HRRP] OS=[Windows Server 2008 R2 Enterprise 7601 Service Pack 1] Server=[Windows Server 2008 R2 Enterprise 6.1]
Sharename Type Comment
--------- ---- -------
IPC$ IPC Remote IPC
Root Disk
X$ Disk
Domain=[NPI_HRRP] OS=[Windows Server 2008 R2 Enterprise 7601 Service Pack 1] Server=[Windows Server 2008 R2 Enterprise 6.1]
Server Comment
--------- -------
Workgroup Master
--------- -------
但是mount -t cifs -o username=NPI_HRRP/KArfer'%hunter2' //CCHFS /mnt
,将 替换hunter2
为我的密码,结果为mount error(22): Invalid argument
(尽管我在命令行中包含了密码,但系统仍提示我输入密码)。如果我将 替换CCHFS
为,结果也是一样10.48.154.235
。
答案1
根据给出的信息,NPI_HRRP 是您的工作组,而 CCHFS 是你的服务器。
对我来说,解决 Samba 问题的第一件事是先尝试smbclient
。如果我成功访问了共享,我会将所需的信息映射到一行mount
。
smbclient -U KArfer -L //CCHFS
应该会为您提供 CCHFS 上可用共享的列表。smbclient -W=NPI_HRRP -U=KArfer -L //CCHFS
如果您需要先进入工作组,也许您需要它。
如果此操作有效,则类似这样的挂载行mount -t cifs -o username=NPI_HRRP/KArfer%ToPsEcReT //CCHFS/x$ /mnt
也应该有效。如果此操作失败并dmesg
显示“无法确定目标地址”,请将服务器的 IP 地址替换//CCHFS
为。//10.48.154.235
像这样的一行mount -t cifs -o credentials=~/.smbcredentials //10.48.154.235/x$ /mnt
可能会更好,以避免你的密码出现在你的 bash 历史记录中。
还,您无法挂载 Samba 共享的“根”。您可能被限制在 X$ 的挂载范围内。或者在您的情况下共享的名称真的是“Root”?这确实令人困惑。
答案2
确保 /mnt/cchfs 存在,然后尝试以下操作:
mount -t cifs -o username=youruser,password=yourpassword //10.48.154.235/cchfs /mnt/cchfs
答案3
在 /etc/fstab 中尝试以下行
//10.48.154.235/Root /mnt/cchfs cifs credentials=/home/hippo/.smbcredentials 0 0
这假设 IP 地址、共享名和凭证文件的内容都是正确的。如果出于某种原因,共享未在启动时挂载,您可以尝试在登录时挂载它,方法是将 fstab 更改为读取
//10.48.154.235/Root /mnt/cchfs cifs noauto,credentials=/home/hippo/.smbcredentials 0 0
并将以下内容放入 /etc/rc.local
mount /mnt/cchfs
exit 0
资料来源: