升级到 Xubuntu 22.04 后无法访问 .smbcredentials

升级到 Xubuntu 22.04 后无法访问 .smbcredentials

我有一台简单的 Puppylinux 服务器,通过 Samba 共享两个文件夹。局域网内有大约 16 台其他 PC,这些 PC 的操作系统版本各不相同,年代也各不相同。

Ubuntu Studio PC 在启动时使用 fstab 条目自动挂载共享文件夹。使用 smbcredentials 文件,权限为 600。

但自从从 20.04 升级到 22.04 后,我收到以下错误:-

mount 错误(22):参数无效请参阅 mount.cifs(8) 手册页(例如 man mount.cifs)和内核日志消息(dmesg)

我理解这可能是由 fstab 条目引起的错误。具体如下:-

//192.168.1.112/vol2 /home/dave/vol1 cifs 用户,exec,dev,suid,rw,凭据=/.smbcredentials,noperm,iocharset=utf8,sec=ntlm,vers=1.0,acl,0 0

dmesg 返回:- [70672.547621] CIFS:VFS:糟糕的安全选项:ntlm

所以我想知道 ntlm 是否已在 22.04 中被弃用、默认被禁用或被赋予不同的名称。

如果是,如何重新启用它?是否可以防止将来的 Ubuntu 版本升级重复此操作?

答案1

mount.cifs 由 Linux 内核控制。

您在 Ubuntu 22.04 中使用的内核已删除 ntlm 选项。

默认情况下,cifs 与服务器协商以确定要使用的最高 smb 方言(vers),从 SMB2.1 开始一直到 SMB 3.X

此外,默认情况下,cifs 使用 sec=ntlmssp,它比旧的 ntlm 值高出很多级别。

答案2

从 fstab 条目中删除 sec=ntlm,vers=1.0 是可行的,但这会用无密码加密取代已弃用的密码加密。

sec=krb5 和 sec=sys 会破坏它,但根据 Morbius 的建议,在 fstab 条目中将 sec=ntlm 替换为 sec=ntlmssp 是可行的

相关内容