こんにちは、フルスタックエンジニアのryuです。
今回の記事では、ユーザーを一覧で表示させる方法を解説します。「どのくらいユーザーが登録されているのか分からない」「どんなユーザー名が設定されているのか知りたい」とお悩みの方のために、ユーザー情報を一覧で表示させる方法をご紹介します。ユーザー情報は、/etc/passwdファイルに格納されているので、このファイルを見ることで確認できます。
目次
Linuxのユーザーを一覧で表示させる方法は?
Linuxのユーザーを一覧で表示させる方法は、以下の2つがあります。
- cat /etc/passwd
- getent passwd
それぞれについて解説します。
cat /etc/passwdで確認する
Linuxのユーザーを一覧で表示させるためには、/etc/passwdファイルの中身を確認しましょう。確認させるためには、以下のコマンドを入力します。
cat /etc/passwd
コマンドを入力すると、このように表示されます。
getent passwdで確認する
もう一つの方法は、getentコマンドを使用する方法です。getentコマンドとは、データベース(通常は /etc/passwd
など)から情報を取得するための汎用ユーティリティです。
ユーザー情報を取得するために使用できます。以下のように実行します。
getent passwd
コマンドを実行すると、/etc/passwdファイル同様にユーザーの一覧が出力されます。
このように、ユーザーの情報が一覧で表示されます。
/etc/passwdとは?
/etc/passwdファイルとは、Unix系オペレーティングシステムにおける基本的なユーザーアカウント情報を格納するファイルです。
ユーザー名、ユーザーID、グループID、ホームディレクトリのパス、およびログインシェルなどの情報を含みます。しかし、セキュリティ上のリスクを低減するため、実際のパスワードは別のファイルに保存されることが一般的です。
/etc/passwdファイルは、システム全体のユーザー管理とプロセス実行に関連し、ユーザーアカウントの一覧や基本情報を提供します。セキュリティ上の懸念から、直接的なパスワード情報は /etc/shadowファイルに保存され、一般ユーザーのアクセスを制限しています。/etc/passwdファイルを閲覧する際は、管理者で閲覧しましょう。
/etc/passwdはどのような情報が格納されているのか?
先ほどは、/etc/passwdの中身を表示させる方法を説明しました。では、その中身はどのような情報が格納されているのでしょうか?詳しく解説します。
/etc/passwdファイルは、ユーザーの情報が一行ずつ格納されています。一行目は、以下のようになっています。
root:x:0:0:root:/root:/bin/bash
それぞれの値は、以下のような意味をもっています。
[ユーザー名]:[パスワード]:[ユーザーID]:[グループID]:[本名]:[ホームディレクトリ]:[ログインシェル]
今回のrootユーザーに当てはめてみると、
ユーザー名 | root |
パスワード | x(暗号化されてx) |
ユーザーID | 0 |
グループID | 0 |
本名 | root |
ホームディレクトリ | /root |
ログインシェル | /bin/bash |
このような各ユーザーの情報が/etc/passwdファイルに格納されています。
ユーザー名だけ一覧で出す方法
/etc/passwdファイルを閲覧すると、ユーザー一覧を見ることができます。しかし、ユーザー名以外の情報も表示されてしまいます。
では、どうすればユーザー名だけを一覧で表示出るのでしょうか?cutコマンドもしくはawkコマンドを使うとユーザー名だけ抜き出すことができます。
cutコマンドでユーザー名だけ抜き出す
cutコマンドを使用して/etc/passwd ファイルから必要な情報を抽出し、sort コマンドで並び替えることでユーザー一覧を整形して表示できます。
以下のように実行します。
cut -d: -f1 /etc/passwd | sort
コマンドを実行すると、以下のように表示されます。
awkコマンドでユーザー名だけ抜き出す
awkコマンドを使用して /etc/passwd ファイルからユーザー名だけを取得することができます。
以下のように実行します。
awk -F: '{print $1}' /etc/passwd
コマンドを実行すると、以下のように表示されます。
このように、cutやawkコマンドを利用することで、ユーザー名だけを一覧にして表示することができます。
ユーザーの一覧情報を確認する方法まとめ
今回の記事では、Linuxでユーザーの一覧情報を確認する方法を解説しました。
ユーザーの情報を一覧で確認するときは、/etc/passwdを見ると覚えておきましょう。
さらにLinuxを学習をしたい人に向けて、InfraAcademyというインフラ学習サービスのご紹介です。
「Linuxの実践的な内容を学習したい」、「コマンドを打ちながらLinuxを学習したい」
そのようなご要望にお応えして、Linuxやネットワークが学習できるサイト「InfraAcademy」をリリースしました!
入門から中級まで初心者でもわかりやすく学習を進めることができます。
- 【Linux入門講座1】ディレクトリと相対パス、絶対パス
- 【Linux入門講座2】ファイルの操作方法
- 【Linux入門講座3】ファイルのアクセス権限
- 【Linux入門講座4】ファイルの編集~vimの使い方をマスターする~
- 【Linux入門講座5】ユーザーとグループ
- 【Linux入門講座6】ネットワーク
- さらに講座あり
↓InfraAcademyの講座の一部です。
上記以外にも、DNSサーバーの構築方法や、Dockerの設定方法などさまざまな講座があります。
インフラエンジニアに必要な知識が学習できます。
参考:Linuxのコマンド練習用サイトのInfraAcademyを作成しました。【Linuxのコマンドをブラウザで練習しよう】