我有一台 Ubuntu 16.04,运行着一个 samba 服务器,还有一台 16.04 机器,使用 fstab 行可以毫无问题地挂载它//192.168.0.102/share /mnt/raid cifs user=myuser,pass=mypass.
当我安装共享时,所有文件都显示正确的用户/组,并且在将文件复制到共享时,模式(即 0644)被保留。
在另一台运行 Ubuntu 17.10 的机器上,相同的 fstab 行会导致挂载将共享上的所有内容列为用户/组 root:root,而不是 myuser:myuser。我可以通过添加来强制用户/组正确uid=1000,gid=1000
到 fstab 行来强制用户/组正确,但在将文件复制到共享时,权限不再保留(它们都显示为 0755)。
如果您能提供任何关于可能导致此问题的变化以及我如何修复它的想法,我将不胜感激。此 samba 共享在我使用的多个 Linux 版本中均能正常工作,因此我相当确定问题出在新的 Ubuntu 17.10 方面,但我不确定这是安全策略的变化还是 cifs 库本身的问题。
答案1
他们已将 mount.cifs 中的默认方言更改为 SMB3。最初默认为 SMB1。要获得与 Ubuntu 16.04 相同的行为,请添加vers=1.0
到挂载选项中。使用此选项,我现在可以获得正确的用户/组,并且在复制时保留权限。