日本語 man コマンド類 (ja-man-1.1j_5) と日本語 man ドキュメント (ja-man-doc-5.4 (5.4-RELEASE 用) など) をインストールすると、以下のような man コマンド閲覧、キーワード検索が コンソールからできるようになります。
4.11-RELEASE-K, 5.4-RELEASE-K, 5.5-RELEASE-K, 6.0-RELEASE-K から 6.4-RELEASE-K, 7.0-RELEASE-K から 7.2-RELEASE-K, 8.0-RELEASE-K は、プライベート版 (小金丸が編集してまとめたもの) ですが、 より多くの翻訳したファイルが含まれています。 (5.4-RELEASE-K から 6.4-RELEASE-K, 7.0-RELEASE-K から 7.2-RELEASE-K, 8.0-RELEASE-K は、全翻訳済み)
6.4-STABLE-K, 7.2-STABLE-K, 8.0-STABLE-K は現在、 作成中で日々更新されています。 最新の snapshots を元に作成しています。
PASSWD(5) FreeBSD ファイルフォーマットマニュアル PASSWD(5)
名称
passwd, master.passwd - パスワードファイルのフォーマット
解説
passwd ファイルは、ローカルに保持しているパスワード情報の情報源です。これ
らは Hesiod ドメインにおける `passwd' と `uid' や、 NIS マップの
`passwd.byname', `passwd.byuid', `master.passwd.byname',
`master.passwd.byuid' と共に使用され、 nsswitch.conf(5) によって制御され
ます。
master.passwd ファイルは root からのみ読み取り可能で、改行で区切られたレ
コードから成ります。ユーザごとに 1 レコードが対応し、コロン (``:'') で区
切られた 10 個のフィールドが含まれます。これらのフィールドは以下の通りで
す:
name ユーザのログイン名。
password ユーザの 暗号化されたパスワード。
uid ユーザの ID。
gid ユーザのログイングループ ID。
class ユーザの一般的な分類 (未使用)。
change パスワードの変更時間。
expire アカウントの有効期限。
gecos ユーザについての一般的な情報。
home_dir ユーザのホームディレクトリ。
shell ユーザのログインシェル。
passwd ファイルは、 pwd_mkdb(8) によって master.passwd ファイルから生成さ
れます。その際に、class, change そして expire フィールドは削除され、
password フィールドは ``*'' に置換されます。
name フィールドはコンピュータアカウントにアクセスするのに用いられるログイ
ンであり、 uid フィールドはそれに結び付けられた数字です。これらはファイル
アクセスを制御するので、両方共そのシステム (また、しばしば 1 まとまりの複
数のシステム) の中で一意であるべきです。
同じログイン名や同じユーザ ID のエントリを複数持つことは可能ですが、普通
それは誤りです。これらのファイルを取り扱うルーチンは、しばしばその複数エ
ントリの 1 つだけを返しますし、それはランダムな選択によるものです。
ログイン名は決してハイフン (``-'') で始めてはいけません。また、メーラを混
乱させやすいので、大文字やドット (``.'') も名前の一部にしないことを強く推
奨します。歴史的にユーザデータベース中でフィールドを区切るのに使われてき
たため、どのフィールドもコロン (``:'') を含んではなりません。
password フィールドはパスワードの 暗号化された形です。 password フィール
ドが空の場合、マシンへのアクセスにはパスワードを要求されません。このよう
にすることは、ほとんど常に誤りです。これらのファイルは暗号化されたユーザ
パスワードを含んでいるので、適切な権限の無い人から読み取り可能にしておく
べきではないでしょう。
group フィールドは、ユーザがログインした際に位置付けられるグループです。
このシステムではマルチグループ( groups(1) 参照) をサポートしているので、
このフィールドにはほとんど特別な意味はありません。
class フィールドは、ユーザのログインクラスに対するキーです。ログインクラ
スは login.conf(5) の中で定義されます。 login.conf(5) は、ユーザの属性、
アカウンティング、リソース、環境設定に関する termcap(5) 形式のデータベー
スです。
change フィールドは UTC における基準時点からの秒数を表したものであり、こ
の時までにアカウントに対するパスワードを変更する必要があります。パスワー
ドの時限機能をなくすには、このフィールドを空にしておきます。
expire フィールドは UTC における基準時点からの秒数を表したものであり、そ
の時にアカウントが消滅します。アカウントの時限機能をなくすには、この
フィールドを空にしておきます。
gecos フィールドは、コンマ (``,'') で区切られた以下のようなサブフィールド
を通常含んでいます:
name ユーザのフルネーム
office ユーザのオフィス番号
wphone ユーザの職場の電話番号
hphone ユーザの自宅の電話番号
フルネームは (``&'') を含むことができます。これは、gecos フィールドが表示
される時や、 finger(1), sendmail(8) などの様々なプログラムで使用される時
に、ログイン名をキャピタライズしたものに置換されます。
オフィスと電話番号フィールドは finger(1) によって使われていますし、その他
のアプリケーションでもおそらく使われています。
ユーザのホームディレクトリは、ログインした時にユーザが置かれる完全な UNIX
パス名です。
shell フィールドは、ユーザの好みのコマンドインタプリタです。 shell フィー
ルドになにも無ければ Bourne シェル (/bin/sh) が指定されたものと解釈しま
す。
HESIOD サポート
nsswitch.conf(5) に `passwd' データベースとして `dns' が指定されていた場
合、 passwd 検索は `passwd' Hesiod ドメインから開始されます。
NIS サポート
nsswitch.conf(5) に `passwd' データベースとして `nis' が指定されていた場
合、 passwd 検索は `passwd.byname', `passwd.byuid',
`master.passwd.byname' そして `master.passwd.byuid' NIS マップから開始さ
れます。
COMPAT サポート
nsswitch.conf(5) に `passwd' データベースとして `compat' が指定されてお
り、 `passwd_compat' データベースとして `dns' か `nis' のどちらかが指定さ
れていた場合、 passwd ファイルは、ユーザ名とネットグループに基づいた、
`+/-' による標準的な排除と取り込み機能もサポートします。
``-'' (マイナス符号)によって開始された行は、それ以降の ``+'' (プラス符号)
によってマークされた取り込みからは排除されます。
行の 2 番目の文字が ``@'' (単価記号) の場合、その操作は name フィールドの
残りの文字列で指定されるネットグループ中のすべてのエントリに対して行われ
ます。そうでない場合、 name フィールドはユーザ名を指定するものと解釈され
ます。
``+'' トークンは、 name フィールドに単独で現れても構いません。この場
合、Hesiod ドメイン passwd ( `passwd_compat: dns' を指定した時)、もしくは
`passwd.byname' と `passwd.byuid' NIS マップ ( `passwd_compat: nis' を指
定した時) のどちらかから、すべてのユーザが取り込まれます。
エントリの uid や gid フィールドが空でない場合、Hesiod ドメインもしくは
NIS マップから取り込まれた情報を、指定された数字で上書きします。同様にし
て、 gecos, dir, shell フィールドにテキストがあった場合、Hesiod や NIS を
介して取り込まれた情報を上書きします。いくつかのシステムでは、 passwd
フィールドも上書きできます。
関連ファイル
/etc/passwd パスワードを除いた ASCII パスワードファイル
/etc/pwd.db パスワードを除いた db(3) 形式のパスワードデータベース
/etc/master.passwd パスワードの入った ASCII パスワードファイル
/etc/spwd.db パスワードの入った db(3) 形式のパスワードデータベース
関連項目
chpass(1), login(1), passwd(1), getpwent(3), netgroup(5), adduser(8),
pwd_mkdb(8), vipw(8), yp(8)
Managing NFS and NIS (O'Reilly & Associates)
バグ
ユーザ情報は他のどこかに入れるべき (そしていつかは入れる) でしょう。
ファイル中で `compat' の排除を取り込みの後に行うことは、予期しない結果を
もたらすでしょう。
互換性
パスワードファイル形式は 4.3BSD 以降で変更されました。以下の awk スクリプ
トは、古いスタイルのパスワードファイルを新しいスタイルのパスワードファイ
ルに変換するのに利用できます。 ``class'', ``change'', ``expire'' フィール
ドが追加されましたが、デフォルトでは無効になっています。現在 class は実装
されていませんが、change と expire は実装されています。これらを設定するに
は、基準時点から今日までの秒数に、好きなだけオフセットを秒数にして加えた
ものを使用してください。
BEGIN { FS = ":"}
{ print $1 ":" $2 ":" $3 ":" $4 "::0:0:" $5 ":" $6 ":" $7 }
歴史
passwd ファイルは Version 6 AT&T UNIX で登場しました。
NIS passwd ファイル形式は、SunOS で初めて登場しました。
Hesiod サポートは、 FreeBSD 4.1 で初めて登場しました。これは NetBSD プロ
ジェクトから取り込まれました。こちらでは、 NetBSD 1.4 で初めて登場しまし
た。
FreeBSD 4.9 January 16, 1999 FreeBSD 4.9