Linuxでユーザーの一覧(/etc/passwd)を確認する

linux_logo

この記事には広告を含む場合があります。

記事内で紹介する商品を購入することで、当サイトに売り上げの一部が還元されることがあります。

Linuxのユーザ一覧と「/etc/passwd」ファイル

Linux には管理者やシステム、任意に追加したユーザーなど多くのユーザーが存在します。

通常は root ユーザーと自分で定義したユーザー以外を知る必要はありません。ただ時折、apache ユーザーで作業したい、postfix ユーザーでコマンドを実行したいときがあります。そんなときに「Linuxにあるユーザーは何があるのだろう」と思います。

このページでは Linux で管理しているユーザーの一覧を確認する方法をまとめていきます。

 

「/etc/passwd」でユーザー一覧を表示する

Linux のユーザーは全て「/etc/passwd」ファイルに記述されています。そのためユーザー一覧を確認するときは「/etc/passwd」を cat コマンドで表示します。

ユーザー一覧を表示するサンプルコマンド

cat /etc/passwd

サンプルコマンドの実行例

[root@hostname]# cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
games:x:12:100:games:/usr/games:/sbin/nologin
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
nobody:x:99:99:Nobody:/:/sbin/nologin
systemd-network:x:192:192:systemd Network Management:/:/sbin/nologin
dbus:x:81:81:System message bus:/:/sbin/nologin
polkitd:x:999:998:User for polkitd:/:/sbin/nologin
rpc:x:32:32:Rpcbind Daemon:/var/lib/rpcbind:/sbin/nologin
rpcuser:x:29:29:RPC Service User:/var/lib/nfs:/sbin/nologin
nfsnobody:x:65534:65534:Anonymous NFS User:/var/lib/nfs:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
chrony:x:998:995::/var/lib/chrony:/sbin/nologin
centos:x:1000:1001:Cloud User:/home/centos:/bin/bash

 

「/etc/passwd」ファイルの説明

passwd ファイルの確認方法を記載しましたが、表示している内容が分かりにくいので説明を載せておきます。まずは passwd ファイルの最終行にある centos ユーザーを参考に説明を行いますので、最終行の抜粋をご覧ください。

centos:x:1000:1001:Cloud User:/home/centos:/bin/bash

 

passwd ファイルは一行ごとに1ユーザーの情報を表し、パラメータを「:(コロン)」で区切っています。ではサンプルの centos ユーザーの各項目の説明を順番に載せておきます。

パラメーター 説明
centos ユーザー名。
x ユーザーに設定しているパスワード。暗号化したパスワードか「 x 」の文字が表示されます。なお「 x 」の文字のときはシャドウパスワードを使用していることを表します。
1000 ユーザーID。
1001 グループID。
Cloud User コメント領域。コメントが設定されていないときは何も記入されません。
/home/centos ユーザーのホームディレクトリ。
/bin/bash ユーザーがログインするときの使用するシェルファイル。

 

id コマンドでユーザー名とグループ名を確認する

ユーザー一覧は「/etc/passwd」で確認できますが、情報が見にくい問題があります。そのためユーザーごとの詳細な情報は、id コマンドを使用するほうが便利です。

id コマンドは指定したユーザー名やグループ名を表示します。ちなみにユーザーを指定しないと現在の自分のユーザー情報が表示されます。

[root@hostname]# id
uid=0(root) gid=0(root) groups=0(root) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023