Ubuntu Server 18.04.01 LTS CIFS 挂载失败

Ubuntu Server 18.04.01 LTS CIFS 挂载失败

在 Ubuntu 中安装持久网络共享时遇到问题,下面是我在 /etc/fstab 中添加的内容

//192.168.2.10/AlphaData_GlobalShare  /media/AlphaData  cifs  credentials=/root/.smbcredentials,iocharset=utf8,uid=1001,gid=1001,vers=3.0,sec=ntlm  0  0
//192.168.2.10/AlphaMedia_GlobalShare  /media/AlphaMedia  cifs  credentials=/root/.smbcredentials,iocharset=utf8,uid=1001,gid=1001,vers=3.0,sec=ntlm  0  0
//192.168.2.10/VMRoot_GlobalShare  /media/VMRoot  cifs 
credentials=/root/.smbcredentials,iocharset=utf8,uid=1001,gid=1001,vers=3.0,sec=ntlm  0  0

这是我使用 sudo mount -a 时遇到的错误

mount error(22): Invalid argument
Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)
mount error(22): Invalid argument
Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)
mount error(22): Invalid argument
Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)

以下是日志

Oct 20 09:49:20 ubuntudocker kernel: [ 2150.545771] CIFS VFS: cifs_mount failed w/return code = -22
Oct 20 09:52:55 ubuntudocker kernel: [ 2365.006778] CIFS VFS: Unable to select appropriate authentication method!
Oct 20 09:52:55 ubuntudocker kernel: [ 2365.006780] CIFS VFS: Send error in SessSetup = -22
Oct 20 09:52:55 ubuntudocker kernel: [ 2365.007569] CIFS VFS: cifs_mount failed w/return code = -22
Oct 20 09:53:00 ubuntudocker kernel: [ 2370.037292] CIFS VFS: Unable to select appropriate authentication method!
Oct 20 09:53:00 ubuntudocker kernel: [ 2370.037294] CIFS VFS: Send error in SessSetup = -22
Oct 20 09:53:00 ubuntudocker kernel: [ 2370.038419] CIFS VFS: cifs_mount failed w/return code = -22
Oct 20 09:53:05 ubuntudocker kernel: [ 2375.077100] CIFS VFS: Unable to select appropriate authentication method!
Oct 20 09:53:05 ubuntudocker kernel: [ 2375.077102] CIFS VFS: Send error in SessSetup = -22
Oct 20 09:53:05 ubuntudocker kernel: [ 2375.078377] CIFS VFS: cifs_mount failed w/return code = -22

不确定是什么导致了这里的问题,共享托管在 FreeNAS 11.2-RC1 服务器上,与 Ubuntu Server VM 相同。知道是什么导致了这里的问题吗?

谢谢

答案1

删除sec=ntlm。这在目前的几个版本中都不起作用,但它仍然存在于互联网上的许多教程中。

答案2

这并不是说它sec=ntlm不再起作用。但是该设置与您使用的 Samba 方言版本不一致。

我已设置好 Ubuntu 18.04 Samba 服务器。如果我尝试使用您的设置进行挂载:

sudo mount -t cifs //gort.local/Public /home/morbius/Test -o guest,vers=3.0,sec=ntlm

它失败并显示完全相同的“无效参数”错误消息,并且记录完全相同的错误。

如果我使用与该安全设置一致的 smb 方言版本运行 mount 命令:

sudo mount -t cifs //gort.local/Public /home/morbius/Test -o guest,vers=1.0,sec=ntlm

它确实有效:

安装|grep cifs

//gort.local/Public 位于 /home/morbius/Test 类型 cifs (rw,relatime,vers=1.0,sec=ntlm,缓存=严格....

如果您想使用 sec=ntlm 连接到服务器,请更改为 vers=1.0 - 我不知道您为什么要或需要这样做但是.....

或者保留 vers=3.0 并删除 sec=ntlm,在这种情况下 sec 默认为 ntlmssp,这与 SMBv3 一致。

相关内容