回答:
smbpasswd
とpdbedit
はどちらもSambaユーザー管理に使用できます。
質問への回答:Samba 4以降、これら2つのコマンドに違いはありません。どちらのコマンドも、smbpasswd形式でもtdbsam形式でも同じファイルで動作し、ジョブを実行します。
答えを拡張する:
smbpasswd
古いものです。同じ名前のファイル形式で保存されたSamba資格情報を管理するために使用されました-smbpasswd。RedHatベースのディストリビューションでのファイルのデフォルトパスは/etc/samba/smbpasswd
(明確にするために:プログラム自体、ファイル形式、およびsmbpasswd
プログラムが動作するその形式のデフォルトファイルはすべてsmbpasswdと呼ばれます)。
pdbedit
の代わりとして、Samba 3開発サイクル中に登場しましたsmbpasswd
。rootユーザーの観点から見ると、実行pdbedit
できるすべての操作とsmbpasswd
それらのスーパーセット(アカウントのセキュリティとポリシー設定の管理)が可能です。のSamba資格情報を保存するための「ネイティブ」形式pdbedit
は、tdbsam -Trivial DBベースのパスワードストレージバックエンドです。RedHatベースのディストリビューションでは、デフォルトのファイルパスは/var/lib/samba/private/passdb.tdb
です。
の問題pdbedit
は、これはrootだけが使用smbpasswd
できるのに対し、通常のユーザーpasswd
はLinuxシステムアカウントに対してコマンドが行うのと同様の方法でSambaパスワードを変更するために使用できることです。したがって、私の理解は、Samba 4以降、ユーザー管理の仕事が受け継がれpdbedit
、smbpasswd
非rootユーザーが自分のパスワードを変更できるように残されていることです(ただし、rootは引き続きsmbpasswd
Samba資格情報ストアを制限された方法で管理するために使用できます)。
抜粋
pdbeditツールはpassdbモジュラーインターフェイスを使用し、使用するユーザーデータベースの種類に依存しません(現在、smbpasswd、ldap、nis +、tdbベースがあり、ツールを変更せずにさらに追加できます)。
しばらくsmbpasswdのmanページ:
抜粋
デフォルトでは(引数なしで実行した場合)、ローカルマシン上の現在のユーザーのSMBパスワードを変更しようとします。これは、passwd(1)プログラムが機能する方法に似ています。smbpasswdは、passwdプログラムがどのように機能するかとは異なりますが、setuidルートではなく、クライアント/サーバーモードで機能し、ローカルで実行されているsmbd(8)と通信します。結果として、これを成功させるには、smbdデーモンがローカルマシンで実行されている必要があります。UNIXマシンでは、暗号化されたSMBパスワードは通常、smbpasswd(5)ファイルに格納されます。
そのpbdedit
ため、さまざまなSambaパスワードバックエンドをsmbpasswd
操作できますが、そのタイプのバックエンドしか操作できません。
smbpasswd
呼び出すpdbedit
を扱うときの下にはtdbsamファイル形式)。
samba-tool user delete
、誰でも違いが何であるかを知っているsamba-tool
し、それらの他のツール(smbpasswd
とがpdbedit
)?