mount.cifs (cifs-utils):默认选项从何而来?

mount.cifs (cifs-utils):默认选项从何而来?

我有一个运行 CIFS 共享的 FreeNAS 11.0-U4 机器,我通常通过 autofs 挂载从 Linux 系统访问该共享。几天前,我注意到挂载行为异常,显示所有具有无用 DOS 样式权限 ( rwxr-xr-x) 的文件,而不是实际的底层模式位。

我决定亲自尝试一下。我运行mount.cifs命令:

sudo mount.cifs -o username=theuser,uid=theuser,gid=theuser //theserver/theuser /mnt

然后我mount不带任何争论地跑去看看实际的安装是什么样子的。这回来了:

//theserver/theuser on /mnt type cifs (rw,relatime,vers=3.0,cache=strict,username=theuser,domain=,uid=1000,forceuid,gid=1000,forcegid,addr=10.XX.XX.XX,file_mode=0755,dir_mode=0755,nounix,serverino,mapposix,rsize=1048576,wsize=1048576,echo_interval=60,actimeo=1)

请特别注意 、 和 的存在nounix(这将禁用所有 UNIX 扩展支持),file_mode所有dir_mode这些组合起来对所有内容强制使用 0755 权限。

我没有指定这些选项,而且我很确定它们没有潜伏在配置文件中的某个地方,所以我很困惑为什么它们会出现。这种设置过去很有效——当然足以将文件归档到 NAS,而无需确定每个文件都是可执行的。

在Linux方面,mount.cifs各种samba组件的版本都是4.6.7。在 FreeNAS 方面,v11.0-U4 运行的是 samba 4.6.8。

这些选项从哪里来?我需要在服务器端调整一些东西吗?我怎样才能让事情恢复正常呢?

答案1

在内核升级中,将 SMB 协议的默认版本更改为 3.0,该版本不支持 Unix 扩展。如果您想使用 Unix 扩展,请附加到您的选项“vers=1.0”。

答案2

如中所述手册页cifs 可以被操纵过程

/proc/fs/cifs

系统表

/etc/fstab

可能你想要 fstab,类似的东西;

//theserver/theuser  /mnt   cifs    guest,uid=1000,iocharset=utf8,vers=1.0  0  0

相关内容