ユーザーアカウントとグループ情報は、サイトの方針に応じて、ネームサービスまたはローカルシステムの /etc 内のファイルのどちらかに格納できます。NIS+ ネームサービスでは情報はテーブルに格納され、NIS ネームサービスではマップに格納され、LDAP ディレクトリサービスではインデックス付きのデータベースファイルに格納されます。
混乱を避けるために、ユーザーアカウントとグループ情報の位置は、データベース、テーブル、マップという 3 種類の呼び方ではなく、単にファイルと呼びます。
ほとんどのユーザーアカウント情報は、passwd ファイルに格納されます。ただし、パスワード暗号とパスワード有効期限は、NIS か NIS+ を使用するときは passwd ファイルに、/etc ファイルを使用するときは /etc/shadow ファイルに格納されます。NIS を使用するとき、パスワード有効期限は使用できません。
passwd ファイルの各フィールドはコロンで区切られ、次のような情報が入っています。
username:password:uid:gid:comment:home-directory:login-shell |
たとえば、次のようになります。
kryten:x:101:100:Kryten Series 4000 Mechanoid:/export/home/kryten:/bin/csh |
次の表では、passwd ファイルの各フィールドについて説明します。
表 4-11 passwd ファイルのフィールド
フィールド名 |
説明 |
---|---|
username |
ユーザー (またはログイン) 名。ユーザー名は固有で、 1 から 8 文字の英字 (A-Z、a-z) と数字 (0-9) を使用する。最初の文字は英字で、少なくとも 1 文字は小文字を使用する |
password |
暗号化されたパスワードの代わりの x (パスワードフィールドはもう使用されない)。暗号化されたパスワードは shadow ファイルに格納される |
uid |
ユーザーをシステムに識別させるユーザー識別番号 (UID)。一般ユーザーの UID は 100 から 60000 までの範囲とする。UID 番号はすべて固有でなければならない |
gid |
ユーザーの一次グループのグループ識別番号 (GID)。GID 番号は 0 から 60002 までの範囲の整数で指定する。60001 と 60002 はそれぞれ nobody とnoaccess に割り当てられる。65534 は nobody4 に割り当てられる |
通常はユーザーのフルネーム。このフィールドはコメントとしての情報専用。このフィールドは、もともとは、Bell 研究所の UNIX システムから GECOS (General Electric Computer Operating System) を実行するメインフレームにバッチジョブを依頼する場合、必要なログイン情報を保持するために使われていたので、GECOS フィールドと呼ばれることもある |
|
home-directory |
ユーザーのホームディレクトリのパス名 |
login-shell |
ユーザーのデフォルトログインシェル。これは /bin/sh、/bin/csh、/bin/ksh のどれかになる。表 4–18 のシェル機能の説明を参照 |
Solaris のデフォルトの passwd ファイルには、標準のデーモン用のエントリが入っています。デーモンとは、通常ブート時に起動され、システム全体で有効なタスク (印刷、ネットワークの管理、ポートの監視など) を実行するプロセスです。
root:x:0:1:Super-User:/:/sbin/sh daemon:x:1:1::/: bin:x:2:2::/usr/bin: sys:x:3:3::/: adm:x:4:4:Admin:/var/adm: lp:x:71:8:Line Printer Admin:/usr/spool/lp: uucp:x:5:5:uucp Admin:/usr/lib/uucp: nuucp:x:9:9:uucp Admin:/var/spool/uucppublic:/usr/lib/uucp/uucico smmsp:x:25:25:SendMail Message Submission Program:/: listen:x:37:4:Network Admin:/usr/net/nls: nobody:x:60001:60001:Nobody:/: noaccess:x:60002:60002:No Access User:/: nobody4:x:65534:65534:SunOS 4.x Nobody:/: |
ユーザー名 |
ユーザー ID |
説明 |
---|---|---|
root |
0 |
スーパーユーザーのアカウント |
daemon |
1 |
ルーチンシステムタスクに関連するシステム包括デーモン |
bin |
2 |
ルーチンシステムタスクを実行するシステムバイナリの実行に関連する管理デーモン |
sys |
3 |
システムのログの記録や一時ディレクトリのファイルの更新に関連する管理デーモン |
adm |
4 |
システムのログの記録に関連する管理デーモン |
lp |
71 |
ラインプリンタのデーモン |
uucp |
5 |
uucp 関数に関連するデーモン |
nuucp |
6 |
uucp 関数に関連するデーモン |
smmsp |
25 |
Sendmail メッセージ送信プログラムデーモン |
listen |
37 |
ネットワーク監視デーモン |
nobody |
60001 |
特別なアクセス権を必要としない、あるいは持つべきではないユーザーまたはソフトウェアプロセスに割り当てられる |
noaccess |
60002 |
あるアプリケーションを経由するが実際にログインをしないで、システムにアクセスする必要があるユーザーまたはプロセスに割り当てられる |
nobody4 |
65534 |
SunOS 4.0 または 4.1 の nobody ユーザーアカウント |
shadow ファイルの各フィールドはコロンで区切られ、次のような情報が入っています。
username:password:lastchg:min:max:warn:inactive:expire |
たとえば、次のようになります。
rimmer:86Kg/MNT/dGu.:8882:0::5:20:8978 |
次の表では、shadow ファイルの各フィールドについて説明します。
表 4-13 shadow ファイルのフィールド
フィールド名 |
説明 |
---|---|
username |
ユーザー (またはログイン) 名 |
次のエントリのいずれかになる。13 文字の暗号化されたユーザーパスワード。アクセス不可能なアカウントを示す *LK*。アカウントのパスワードがないことを示す NP |
|
1970 年 1 月 1 日から最後にパスワードを変更した日付までの日数 |
|
min |
パスワードの変更から次の変更までに必要な最短日数 |
max |
ユーザーが新しいパスワードの指定をもとめられるまで、パスワードを変更しないで使い続けることができる最長日数 |
アカウントを使用 (ログイン) しなくてもよい最長日数 |
|
group ファイルの各フィールドはコロンで区切られ、次のような情報が入っています。
group-name:group-password:gid:user-list |
たとえば、次のようになります。
bin::2:root,bin,daemon |
次の表では、group ファイルの各フィールドについて説明します。
表 4-14 group ファイルのフィールド
Solaris のデフォルトの group ファイルには、システム全体に有効なタスク (印刷、ネットワーク管理、電子メールなど) をサポートする次のようなシステムグループが記述されています。これらのグループの多くは、passwd ファイルのエントリに対応しています。
root::0:root other::1: bin::2:root,bin,daemon sys::3:root,bin,sys,adm adm::4:root,adm,daemon uucp::5:root,uucp mail::6:root tty::7:root,tty,adm lp::8:root,lp,adm nuucp::9:root,nuucp staff::10: daemon::12:root,daemon smmsp::25:smmsp sysadmin::14:root nobody::60001: noaccess::60002: nogroup::65534: |
グループ名 |
グループ ID |
説明 |
---|---|---|
root |
0 |
スーパーユーザーのグループ |
other |
1 |
オプションのグループ |
bin |
2 |
システムバイナリの実行に関連する管理グループ |
sys |
3 |
システムのログの記録や一時ディレクトリに関連する管理グループ |
adm |
4 |
システムのログの記録に関連する管理グループ |
uucp |
5 |
uucp 関数に関連するグループ |
|
6 |
電子メールのグループ |
tty |
7 |
tty デバイスに関連するグループ |
lp |
8 |
ラインプリンタのグループ |
nuucp |
9 |
uucp 関数に関連するグループ |
staff |
10 |
一般的な管理グループ |
daemon |
12 |
ルーチンシステムタスクに関連するグループ |
sysadmin |
14 |
Admintool と Solstice AdminSuite ツールに関連する管理グループ |
smmsp |
25 |
Sendmail メッセージ送信プログラムデーモン |
nobody |
60001 |
特別なアクセス権を必要としない、あるいは持つべきではないユーザーまたはソフトウェアプロセスに割り当てられるグループ。 |
noaccess |
60002 |
あるアプリケーションを経由するが実際にログインをしないで、システムにアクセスする必要があるユーザーまたはプロセスに割り当てられるグループ。 |
nogroup |
65534 |
既知のグループのメンバーでないユーザーに割り当てられるグループ。 |