PWD_MKDB(8) FreeBSD システム管理者マニュアル PWD_MKDB(8)
名称
pwd_mkdb − パスワードデータベースを構築する |
書式
pwd_mkdb [−C] [−N] [−p] [−i] [−d directory] [−s cachesize] [−u username] file |
解説 |
pwd_mkdb ユーティリティは、指定されたファイルから db(3) スタイルの、セ キュリティのしっかりしたデータベースとそうでないデータベースの 2 つを構築 します。そして、これらのデータベースは、それぞれ /etc/spwd.db と /etc/pwd.db にインストールされます。このファイルは、 /etc/master.passwd にインストールされます。このファイルは正しいフォーマットでなければなりま せん (passwd(5) を参照)。このシステムで使われるフォーマットは、旧来のバー ジョン 7 スタイルのフォーマットとは異なるので注意を要します。 オプションは以下の通りです。 |
−C
パスワードファイルが正しいフォーマットかどうかをチェックします。ど のファイルも変更、追加、削除を行ないません。 −N −p −i −d directory −u username −s cachesize 2 つのデータベースの違いは、安全なバージョンでは、ユーザのパスワードが暗 号化されて入っており、安全でないバージョンでは、パスワードが ‘‘*’’ となっ ていることです。 このデータベースは、 C ライブラリパスワードルーチンに使われます (getpwent(3) を参照)。 pwd_mkdb ユーティリティは成功したときは 0 を返し、失敗したときは 0 以外を 返します。 環境変数 |
PW_SCAN_BIG_IDS 環境変数が設定されると、大きなユーザ ID およびグループ ID に対して通常生成される警告メッセージを、 pwd_mkdb は抑制します。 ID 値を 仮定するプログラムでこのような ID を使用すると、深刻な問題の原因となりま す。 |
関連ファイル
/etc/pwd.db
セキュリティのないパスワードデータベー スファイル バグ |
パスワードファイルの不可分な更新が必要なので、 pwd_mkdb は、インストール に rename(2) を使います。しかし、コマンドラインで指定されたファイルが /etc ディレクトリと同じファイルシステム上に存在しなければなりません。 複数の人が、 pwd_mkdb を同時に異なるパスワードファイルに対して走らせる と、明らかにレース (race; 競合) になってしまいます。 pwd_mkdb のフロント エンドである chpass(1), passwd(1), vipw(8) では、この問題を避けるために必 要なロック操作を行います。 |
互換性
以前のバージョンのシステムは、 pwd_mkdb 同様のプログラムである mkpasswd(8) を持っており、それはパスワードファイルに対して dbm(3) スタイ ルのデータベースを構築しましたが、これをインストールするために呼ぶプログ ラムに依存していました。このプログラムは、以前のプログラムのユーザが機能 の変化で驚かないように名前が変えられました。 |
関連項目
chpass(1), passwd(1), db(3), getpwent(3), passwd(5), vipw(8) FreeBSD 10.0 June 6, 1993 FreeBSD 10.0 |