我配置 Samba 的典型步骤是使用名为/etc/samba/smb.conf.master。配置后,我使用来实现更改testparm -s /etc/samba/smb.conf.master > /etc/samba/smb.conf
。但我发现,log level = [0..10]
/etc/samba/smb.conf.master被忽略并且不会输出到/etc/samba/smb.conf。这并不意味着日志文件完全是空的。相反,它们非常简陋,只有错误和警告,就像设置是默认的一样:log level = 1
。
-d
我甚至尝试使用调试级别选项设置日志级别,testparm
如下所示。但这没有效果。日志级别设置仍然没有传递给/etc/samba/smb.conf。
testparm -s -d 3 /etc/samba/smb.conf.master > /etc/samba/smb.conf
尽管如此,我目前的解决方案是直接编辑/etc/samba/smb.conf事后,使用 添加我的日志级别设置log level = [0..10]
。随后,日志记录级别按预期设置并正确反映在日志文件中。
经过一些研究,这个 Stack Exchange 问题的答案是,无法修改 Samba 中的日志级别,表示您不能使用 testparm 来测试这一点,因为它会强制将日志级别设置为 2。
这是预期的行为吗?如果是,为什么?有没有更好的工作流程,这样我就不必编辑两个文件了?
Ubuntu 22.04 LTS 服务器
$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 22.04.2 LTS
Release: 22.04
Codename: jammy
Samba 版本:
$ smbd -V
Version 4.15.13-Ubuntu