我在笔记本电脑上运行 Lubuntu 16.04.1。在工作中,我用以太网电缆将它插入墙上。这提供了 Internet 访问,还允许我访问称为 cchfs ( ) 的文件目录(可能是共享,或者是服务器,或两者?)smb://cchfs
,它在这里用作 Windows 机器上的映射网络驱动器。我可以通过打开 PCManFM,选择 Go → Network,然后打开图标“Windows Network”、“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.
From this question,这是关于此错误消息的,看起来我需要替换smb://cchfs
为//SOMETHING/cchfs
or //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 来说似乎不是问题,但这可能是个问题吗?
编辑 2:如果我使用KArfer
代替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
.
根据给出的信息, 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
显示“无法确定目标地址。”,请替换//CCHFS
为//10.48.154.235
您的服务器的 IP 地址。像这样的行
mount -t cifs -o credentials=~/.smbcredentials //10.48.154.235/x$ /mnt
可能会更好地避免在 bash 历史记录中包含您的密码。此外,您不能挂载 samba 共享的“根”。您可能仅限于 X$ 的安装。或者在您的情况下,共享名称真的是“根”吗?这真的很令人困惑。
确保 /mnt/cchfs 存在然后试试这个:
尝试 /etc/fstab 中的以下行
这假定您的凭证文件的 IP 地址、共享名和内容都是正确的。如果由于某种原因未在启动时安装共享,您可以尝试在登录时安装它,而不是将 fstab 更改为读取
并将以下内容放入 /etc/rc.local
资料来源:
https://wiki.ubuntu.com/MountWindowsSharesPermanently
https://anothersysadmin.wordpress.com/2007/12/17/howto-mount-samba-shares-in-fstab-using-a-credential-file/