因此,昨天晚上,我花了一个多小时(示意性地-我秃头)拔头发,试图弄清为什么smbpasswd拒绝我为一位Samba用户重置密码的尝试。总之,长话短说,这显然是因为用户还不存在(smbpasswd -a毫无怨言地添加了她,现在一切都变糟了),尽管我仍然发誓我确实已经添加了她。

无论如何,如果我可以简单地在smbpasswd数据库中列出用户,则可以避免很多麻烦。是否有可以执行此操作的命令或实用程序? (Samba使用的是这种新型的.tdb数据库,否则我只有cat /etc/smbpasswd。)

#1 楼

我相信您要查找的命令是pdbedit

从手册页“ pdbedit-管理SAM数据库(Samba用户的数据库)”中

sudo pdbedit -L -v


-L列出用户。 -v太详细了。

评论


看起来就像我想要的,谢谢!

– Kromey
2011年4月15日在0:07

不,不行。我得到tdbsam_open:无法打开/创建TDB passwd [/var/lib/samba/private/passdb.tdb]

– starbeamrainbowlabs
16年4月17日在16:20

@starbeamrainbowlabs我在没有sudo的情况下运行该命令时,也会收到此错误!使用sudo运行它可以正常工作

–eli
17年1月13日在11:56

这节省了我一些时间和麻烦。谢谢!

–布莱恩·考恩(Brian Cowan)
17 Mar 27 '17 at 17:12

#2 楼

在Samba 4和更高版本中,还有samba-tool user list和其他有用的用户管理命令

评论


我相信只有在将Samba设置为AD服务器的情况下才可以。对于工作组或NT4域Samba服务器,您需要pdbedit -L,如接受的答案所示。

– mivk
19年1月9日,12:54