Linux豆知識 179

「/etc/passwd」ファイル

今回は、「/etc/passwd」ファイルについて見てみましょう。

「/etc/passwd」ファイルは、ユーザのアカウント情報が格納されたファイルです。
--
$ cat /etc/passwd
root:x:0:0:root:/root:/bin/bash


user01:x:500:500::/home/user01:/bin/bash
--

各行に、アカウント情報が記述されています。「:」で各情報が区切られています。記法は以下の通りです。

第1フィールド:ユーザ名
第2フィールド:パスワード
第3フィールド:ユーザID
第4フィールド:グループID
第5フィールド:コメント欄
第6フィールド:ホームディレクトリ
第7フィールド:ログインシェル

このファイルは、各ユーザがシステムにログインする際などユーザ情報が必要なときに参照されるファイルです。そのため、パーミッションは一般ユーザでも参照できるよう、その他のユーザにも読み取り権限が付与されています。

ところで、このファイルの各行の第2フィールドは本来パスワードが記述されるのですが、大抵の場合、この部分が「x」となっています。「シャドウパスワード」と呼ばれる仕組みを利用している場合にこのようになります。
この場合、パスワードは「/etc/shadow」ファイル(次回取り上げます)に書かれています。

なお、この「/etc/passwd」ファイルを直接編集する際には、viなど普通のエディタで編集することは避け、「vipw」コマンドを利用するようにしてください。vipwコマンドは、「/etc/passwd」ファイルを編集している時に、他のプロセスから「/etc/passwd」ファイルが変更されないようにロックをかけるという役割があります。また、当然のことですが編集には十分注意してください。不適切な編集を行うと、ユーザがシステムにログインできなくなってしまいます。そのため、ユーザ情報を変更するにはvipwで直接/etc/passwdを編集するのではなく、usermodコマンドなどを使って行うのが望ましいでしょう。


ページトップへ