使用SMB 2.1或更高版本挂载Windows Share


12

我试图使用Ubuntu 12.04(使用内核3.13.0-117-generic)挂载Windows托管的SMB共享(CIFS)。使用SMB1进行安装是可行的,但这是不可接受的,我们必须改为使用SMB2.1或更高版本进行安装。

以下是我通过传递ver =参数来执行此操作的输出

root@----:/# mount -t cifs //SERVER/smbtest /mnt/smbtest --verbose -o ver=2.1,user=administrator
Password:
mount.cifs kernel mount options: 
ip=10.16.0.40,unc=\\server.domain.net\smbtest,ver=2.1,ver=1,user=administrator,pass=********
mount error(22): Invalid argument
Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)

如您所见,在mount.cifs内核安装选项中有两个ver参数,一个是我指定的参数,另一个是默认参数(1)。如果我为ver指定的值不是1或1.0,则会发生这种情况。

已安装cifs-utils 5.1版,而cifs.ko在2.02版上。在Samba Wiki上的SMB3内核状态页面上,https: //wiki.samba.org/index.php/SMB3_kernel_status ,

"The minimum version for use of the Linux kernel SMB3 support is kernel version 3.12 (or backport of cifs.ko module version 2.02 or later) but kernel version 3.18 or later (or equivalent, ie cifs module version 2.04 or later) is recommended for best SMB3 support."

谁能帮助我在这里走上正确的路?我肯定错过了什么。还有哪些其他方法可以强制SMB2 +连接?这是我在这里的第一篇文章,如果您错过了任何让我知道的内容,我会尽量使其简短,然后将信息添加到我的文章中。

据我所知,这应该行得通,但是如果我误解了某些东西并且不支持SMB2 +,我不会感到惊讶。

谢谢

编辑:我知道12.04是停产。我将在明天用14.04的相关信息更新该帖子,该信息也存在相同的问题。如果任何人都可以回答re:12.04,那么我们将不胜感激。


1
这是代替wannacry赎金特别相关洁具开发的目标SMB1
杰夫·帕克特

如果您拥有设备的名称(例如foo),但是没有设备的ipaddr名称:nmblookup foo
启用

Answers:


8

如果我使用ver,它确实会键入“无效参数”,但是man mount.cifs表示选项名称是“ vers”,而不是“ ver”。

       vers=
       SMB protocol version. Allowed values are:

       ·   1.0 - The classic CIFS/SMBv1 protocol. This is the default.

       ·   2.0 - The SMBv2.002 protocol. This was initially introduced in
           Windows Vista Service Pack 1, and Windows Server 2008. Note
           that the initial release version of Windows Vista spoke a
           slightly different dialect (2.000) that is not supported....

在Mint 18.1中对我有用:

mount -t cifs //192.168.1.1/public /home/user/Desktop/share --verbose -o vers=2.1,user=winuser

1

我在本地手册页中找到了可用的选项。在您自己的计算机上检查此内容以查看其支持的功能。进入手册页后,键入/vers=以快速找到该参数。

man mount.cifs

然后,我按如下方式挂载我的股票:

sudo mount -t cifs //nas/homes/mike /media/mike/nashome -o vers=3.11,credentials=/home/mike/.ssh/.smb_nas

这需要在/home/mike/.ssh/.smb_nas中包含以下内容的凭据文件,因此我不需要在命令中输入密码(因为该密码以纯文本格式存储在您的命令历史记录中)。提示(令人讨厌)。

username=mike
password=[REAL PASSWORD]
domain=WORKGROUP

我正在从支持SMB 3.11版的Synology NAS进行安装。您必须检查Windows(或任何通过CIFS / SMB托管的文件)版本,以查看服务器端支持的版本。


1

奇怪的是,如果共享计算机不在该IP地址上,则可能会出现同样的错误。对DHCP的更改“移动”了我们的NAS,这就是我问题的根源。一旦共享恢复到正确的IP,错误就会停止。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.