Linux 命令速查
文件管理 man testparm

testparm

检查 Samba 配置文件的语法并输出生效参数

返回

补充说明

testparm 是 Samba 套件自带的配置校验工具。它读取 smb.conf,检查语法错误和未知参数,然后打印出 Samba 实际理解的配置内容——包括那些没有写在文件里、由默认值补全的选项。

排查“改了配置却不生效”时非常有用:先跑 testparm 看是否有 Unknown parameter 或 WARNING,再确认打印出来的值是否与你预期一致。默认会先显示配置文件名和错误,然后询问是否继续打印,用 -s 可以跳过交互,适合脚本。

它只做静态解析,不检查共享目录是否存在、权限是否正确、用户是否能通过认证;这些仍需实际挂载测试。修改配置后推荐流程是:testparm -s → systemctl reload smbd(或 restart)→ 客户端验证。

语法

testparm [选项] [配置文件]

选项

  • -s, --suppress-prompt:不询问,直接输出配置摘要
  • -v, --verbose:显示所有参数(含默认值)
  • -d, --debuglevel 级别:设置调试级别
  • --section-name 名称:只输出指定 section
  • --parameter-name 名称:只输出指定参数的值
  • -h, --help:显示帮助
  • -V, --version:显示版本

实例

# 校验默认配置文件
testparm

# 非交互输出全部生效参数
testparm -s

# 查看某个共享的配置
testparm -s --section-name=share

# 只取 global 段中的 workgroup 值,便于脚本判断
testparm -s --section-name=global --parameter-name=workgroup

# 校验一份临时配置
testparm /etc/samba/test.conf

参考链接