gol*_*lem 11

双方smbpasswdpdbedit可以用于Samba用户管理。

回答问题:从 Samba 4 开始,这两个命令之间没有区别。这两个命令都将在同一个文件上运行 - 无论是smbpasswd还是tdbsam格式 - 并完成工作。

扩展答案:

smbpasswd是旧的。它用于管理以同名文件格式存储的 Samba 凭证 - smbpasswd。基于 RedHat 的发行版中文件的默认路径是/etc/samba/smbpasswd(为了消除歧义:程序本身、文件格式和smbpasswd程序运行的该格式的默认文件都称为smbpasswd)。

pdbedit在 Samba 3 开发周期中出现作为smbpasswd. 从 root 用户的角度来看,pdbedit它能够执行所有操作smbpasswd以及它们的超集(管理帐户安全和策略设置)。用于存储 Samba 凭据的“本机”格式pdbedittdbsam - 基于普通数据库的密码存储后端。在基于 RedHat 的发行版上,默认文件路径是/var/lib/samba/private/passdb.tdb.

问题pdbedit在于它只能由 root 使用,而smbpasswd普通用户可以使用它来更改他们的 Samba 密码,方式类似于passwdLinux 系统帐户的命令。所以我的理解是,从 Samba 4 开始,用户管理的工作被传递给pdbeditsmbpasswd留给非 root 用户能够更改他们的密码(尽管 root 仍然可以smbpasswd以有限的方式用于管理 Samba 凭据存储)。