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