Name

pdbedit — SAM データベースを管理する

Synopsis

pdbedit [-L] [-v] [-w] [-u username] [-f fullname] [-h homedir] [-D drive] [-S script] [-p profile] [-a] [-m] [-r] [-x] [-i passdb-backend] [-e passdb-backend] [-b passdb-backend] [-g] [-d debuglevel] [-s configfile] [-P account-policy] [-C value] [-c account-control]

解説

このツールは、Samba(7) スイートの一部である。

pdbedit プログラムは SAM データベース内に保持されるユーザーアカウントを管理するために利用され、 root だけが実行できる。

pdbedit ツールは、 モジュール方式のパスワードデータベース・インターフェイスを利用しており、 実際に利用するユーザーデータベースの種類に依存しない作りになっている。 (現在のところ、smbpasswd ファイル、LDAP、NIS+、tdb ベースのデータベースがあり、それ以外にもツールの変更なしに追加が可能)

pdbedit の主な利用方法として、 ユーザーアカウントの追加、 ユーザーアカウントの削除、 ユーザーアカウントの変更、 ユーザーアカウントの一覧表示、 ユーザーアカウントの取り込みの 5 種類がある。

オプション

-L

このオプションは、 データベースのすべてのユーザーアカウントを一覧表示する。 ユーザー名と UID の組み合わせが「:」で区切られて一覧表示される。

例: pdbedit -L

sorce:500:Simo Sorce
samba:45:Test User
-v

このオプションは、 冗長な一覧表示形式を有効にする。 データベースのユーザーの一覧表示において、pdbedit は アカウントごとに記述的な形式で表示するようになる。

例: pdbedit -L -v

---------------
username:       sorce
user ID/Group:  500/500
user RID/GRID:  2000/2001
Full Name:      Simo Sorce
Home Directory: \\BERSERKER\sorce
HomeDir Drive:  H:
Logon Script:   \\BERSERKER\netlogon\sorce.bat
Profile Path:   \\BERSERKER\profile
---------------
username:       samba
user ID/Group:  45/45
user RID/GRID:  1090/1091
Full Name:      Test User
Home Directory: \\BERSERKER\samba
HomeDir Drive:  
Logon Script:   
Profile Path:   \\BERSERKER\profile
-w

このオプションは、 一覧表示を「smbpasswd」形式にする。 データベースのユーザーの一覧表示において、pdbedit は アカウントを smbpasswd ファイルの形式と互換性のある形式で表示するようになる。 (詳細は smbpasswd(5) を参照のこと)

例: pdbedit -L -w

sorce:500:508818B733CE64BEAAD3B435B51404EE:D2A2418EFC466A8A0F6B1DBB5C3DB80C:[UX         ]:LCT-00000000:
samba:45:0F2B255F7B67A7A9AAD3B435B51404EE:BC281CE3F53B6A5146629CD4751D3490:[UX         ]:LCT-3BFA1E8D:
-u username

このオプションは、 操作 (表示・追加・削除など) の対象とするユーザーの名前を指定する。 このオプションは、 追加・削除・変更操作においては必須であり、 表示操作においては任意である。

-f fullname

このオプションは、 ユーザーアカウントの追加および変更を行なうときに利用する。 ユーザーのフルネームを指定する。

例: -f "Simo Sorce"

-h homedir

このオプションは、 ユーザーアカウントの追加および変更を行なうときに利用する。 ユーザーのホームディレクトリとなるネットワークパスを指定する。

例: -h "\\\\BERSERKER\\sorce"

-D drive

このオプションは、 ユーザーアカウントの追加および変更を行なうときに利用する。 ホームディレクトリの割り当て先とする Windows のドライブ名を指定する。

例: -d "H:"

-S script

このオプションは、 ユーザーアカウントの追加および変更を行なうときに利用する。 ユーザーのログオンスクリプトのパスを指定する。

例: -s "\\\\BERSERKER\\netlogon\\sorce.bat"

-p profile

このオプションは、 ユーザーアカウントの追加および変更を行なうときに利用する。 ユーザーのプロファイルディレクトリを指定する。

例: -p "\\\\BERSERKER\\netlogon"

-G SID|rid

ユーザーアカウントの追加および変更を行なうときに利用する。 ユーザーに新たに割り当てるプライマリグループの SID (セキュリティ識別子) または RID を指定する。

例: -G S-1-5-21-2447931902-1787058256-3961074038-1201

-U SID|rid

このオプションは、 ユーザーアカウントの追加および変更を行なうときに利用する。 ユーザーの新しい SID (セキュリティ識別子) または RID を指定する。

例: -U S-1-5-21-2447931902-1787058256-3961074038-5004

-c account-control

このオプションは、 ユーザーアカウントの追加および変更を行なうときに利用する。 ユーザーのアカウント制御プロパティを指定する。 指定可能なフラグは以下のとおり。

  • N: パスワードは必要ない

  • D: アカウントは無効

  • H: ホームディレクトリが必要

  • T: 他のアカウントを一時的に複製

  • U: 通常のユーザーアカウント

  • M: MNS ログオンユーザーアカウント

  • W: ワークステーション信頼アカウント

  • S: サーバ信頼アカウント

  • L: 自動ロック

  • X: パスワードの有効期間なし

  • I: ドメイン信頼アカウント

例: -c "[X ]"

-a

このオプションは、 ユーザーをデータベースに追加するときに指定する。 別途、ユーザーの名前を -u オプションで指定する必要がある。 ユーザーを追加するとき、 pdbedit はユーザーに割り当てるパスワードの入力を求める。

例: pdbedit -a -u sorce

new password:
retype new password

Note

pdbedit は、unix password sync が設定されている場合でも、UNIX パスワード同期スクリプトを呼び出さない。単に Samba ユーザーデータベースのデータを更新するのみ。

ユーザーを追加して側、パスワードが同期されるようにするには、smbpasswd-a オプションを使用する。

-r

このオプションは、 データベースの既存のユーザーを変更するときに指定する。 別途、ユーザーの名前を -u オプションで指定する必要がある。 ほかのオプションを指定することで、 指定したユーザーのプロパティを変更することができる。 このオプションは過去との互換性を保つために残されているだけで、 現在は指定する必要はない。

-m

このオプションは -a オプションと組み合わせて利用する。 このオプションを指定すると、 pdbedit はユーザーアカウントではなくマシン信頼アカウントを追加する。 (-u username にはマシン名を与える)

例: pdbedit -a -m -u w2k-wks

-x

このオプションは、 データベースからアカウントを削除するときに指定する。 別途、ユーザーの名前を -u オプションで指定する必要がある。

例: pdbedit -x -u bob

-i passdb-backend

ユーザーを取得するために利用するパスワードデータベース・バックエンドとして、 smb.conf で指定したものとは別のバックエンドを指定する。 ローカルのユーザーデータベースにデータを取り込む (インポートする) ときに利用する。

このオプションで、 パスワードデータベース・バックエンドの移行を容易に行うことができる。

例: pdbedit -i smbpasswd:/etc/smbpasswd.old

-e passdb-backend

指定したパスワードデータベース・バックエンドに現在有効なすべてのユーザーを転送 (エクスポート) する。

このオプションで、 パスワードデータベース・バックエンドの移行とバックアップを容易に行うことができる。

例: pdbedit -e smbpasswd:/root/samba-users.backup

-g

-g オプションを指定すると、 -i in-backend -e out-backend オプションはユーザーデータベースではなく、 グループマッピングに対して実行される。

このオプションで、 パスワードデータベース・バックエンドの移行とバックアップを容易に行うことができる。

-b passdb-backend

デフォルトではない別のパスワードデータベース・バックエンドを指定する。

例: pdbedit -b xml:/root/pdb-backup.xml -l

-P account-policy

アカウントポリシーを表示する。

有効なポリシーは、 「minimum password age」、「reset count minutes」、 「disconnect time」、「user must logon to change password」、 「password history」、「lockout duration」、 「min password length」、「maximum password age」、 「bad lockout attempt」である。

例: pdbedit -P "bad lockout attempt"

account policy value for bad lockout attempt is 0
-C account-policy-value

アカウントポリシーを指定した値に設定する。 このオプションは、-P オプションと組み合わせて利用する。

例: pdbedit -P "bad lockout attempt" -C 3

account policy value for bad lockout attempt was 0
account policy value for bad lockout attempt is now 3
-h|--help

コマンドラインオプションの要約を表示する。

-V

プログラムのバージョン番号を表示する。

-s <configuration file>

サーバーが必要とする詳細な設定を含む設定ファイルを指定する。 このファイルには、 サーバーが提供するサービスに関する記述や、 どの printcap ファイルを利用するかといった情報が含まれている。 詳細は smb.conf を参照のこと。 デフォルトの設定ファイルの名前は、コンパイル時に決定される。

-d|--debug=debuglevel

デバッグレベルを debuglevel に設定する。 debuglevel は、0 から 10 までの整数である。 このパラメータを指定しないときのデフォルト値は 0 である。

この値を大きくするほど、 サーバーの動作に関するより詳細な情報がログファイルに記録される。 レベル 0 では、致命的なエラーと重大な警告のみが記録される。 レベル 1 は日々の運用に適しており、 少量の稼働状況に関する情報を生成する。

1 より上のレベルは大量のログが生成されるので、 問題解決の時にのみ使用すべきである。 3 より上のレベルは開発者だけが利用するように設計されており、 莫大な量のログデータが生成される。 そのほとんどは非常に謎めいた内容となっている。

注意: このパラメータの指定は、 smb.conf ファイル中の log level パラメータより優先される。

-l|--logfile=logbasename

ログ/デバッグファイルのファイル名。 拡張子として ".client" が追加される。 ログファイルはクライアントによって削除されることはない。

注意

このコマンドは root だけが利用できる。

バージョン

このマニュアルページは、Samba スイートのバージョン 3.0 用に記述されている。

関連項目

smbpasswd(5), samba(7)

作者

オリジナルの Samba ソフトウェアと関連するユーティリティは、 Andrew Tridgell によって作られた。 Samba は現在、Linux カーネルが開発されているような方法でのオープンソースプロジェクトである Samba Team によって開発されている。

pdbedit のマニュアルページは、Simo Sorce と Jelmer Vernooij によって書かれた。