ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
| この記事の要点 |
|
登録ユーザー一覧の取得
Linux サーバーに登録されているユーザーは /etc/passwd ファイルか getent passwd コマンドで一覧できます。両者の違いは重要:
# /etc/passwd の中身そのもの(ローカル定義のみ)
cat /etc/passwd
# getent passwd は NSS 経由 → LDAP / NIS / SSSD のユーザーも含む
getent passwd
# 1 ユーザー指定
getent passwd alice
# alice:x:1001:1001:Alice User:/home/alice:/bin/bash
# 件数
wc -l /etc/passwd
getent passwd | wc -l
/etc/passwd の読み方
alice:x:1001:1001:Alice User:/home/alice:/bin/bash
| | | | | | |
| | | | | | +-- ログインシェル
| | | | | +-------------- ホームディレクトリ
| | | | +------------------------- GECOS(フルネーム等)
| | | +------------------------------- プライマリ GID
| | +------------------------------------ UID
| +--------------------------------------- パスワード(x=/etc/shadow参照)
+-------------------------------------------- ユーザー名
ログイン可能なユーザーだけ抽出
サービス用アカウント (httpd, mysql 等) は通常 /sbin/nologin や /bin/false が割当てられます。ログイン可能な人間ユーザーだけを抽出する場合:
# ログイン可能シェルを持つユーザー
awk -F: '$7 !~ /nologin|false|sync|halt|shutdown/ {print $1, $7}' /etc/passwd
# ホームディレクトリが /home 以下のユーザーのみ
awk -F: '$6 ~ /^\/home\// {print $1}' /etc/passwd
# UID >= 1000(一般ユーザー、CentOS 7+ / Ubuntu / Debian)
awk -F: '$3 >= 1000 && $3 < 65534 {print $1}' /etc/passwd
# UID 500-999(古い RHEL 6 以前)
awk -F: '$3 >= 500 && $3 < 1000 {print $1}' /etc/passwd
# 名前のみリスト
cut -d: -f1 /etc/passwd
getent passwd | cut -d: -f1
現在ログイン中のユーザー
# 簡潔
users
# alice bob
# 詳細
who
# alice pts/0 2026-06-11 10:00 (192.168.1.10)
# bob pts/1 2026-06-11 10:30 (192.168.1.20)
# CPU / IDLE / 実行中コマンドも
w
# 10:50:00 up 5 days, 3:00, 2 users, load average: 0.05, 0.10, 0.15
# USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
# alice pts/0 192.168.1.10 10:00 0.00s 0.10s 0.00s w
# bob pts/1 192.168.1.20 10:30 0.50m 0.05s 0.05s vim
# ログイン履歴(過去)
last
last -10 # 直近 10 件
last alice # alice のログイン履歴
last reboot # 再起動履歴
# 失敗ログイン
lastb # root 権限必要
UID で人間ユーザーを抽出(システム別)
| システム | システムアカウント UID | 一般ユーザー UID |
|---|---|---|
| RHEL 7+, CentOS 7+, Rocky/AlmaLinux | 0〜999 | 1000〜65533 |
| RHEL 6 以前 | 0〜499 | 500〜65533 |
| Ubuntu / Debian | 0〜999 | 1000〜65533 |
| SUSE / openSUSE | 0〜999(一部 100〜499 をサービス予約) | 1000〜65533 |
| 古い Solaris | 0〜99 | 100〜2147483647 |
境界は /etc/login.defs の UID_MIN / UID_MAX で定義されています:
grep -E '^UID_MIN|^UID_MAX' /etc/login.defs
# UID_MIN 1000
# UID_MAX 60000
# SYS_UID_MIN 201
# SYS_UID_MAX 999
# これを使って一般ユーザー抽出
UID_MIN=$(awk '/^UID_MIN/ {print $2}' /etc/login.defs)
UID_MAX=$(awk '/^UID_MAX/ {print $2}' /etc/login.defs)
awk -F: -v min=$UID_MIN -v max=$UID_MAX \
'$3 >= min && $3 <= max {print $1}' /etc/passwd
グループ確認
# 全グループ
cat /etc/group
getent group
# 特定ユーザーが属するグループ
groups alice
id alice
# uid=1001(alice) gid=1001(alice) groups=1001(alice),10(wheel),100(users)
# 特定グループに属するメンバー
getent group wheel
# wheel:x:10:alice,bob,carol
# wheel グループメンバー(sudo 権限ユーザー)一覧
getent group wheel | cut -d: -f4
sudo 可能なユーザーを調べる
# sudoers ファイル(root のみ閲覧可)
sudo cat /etc/sudoers
sudo ls /etc/sudoers.d/
# wheel グループメンバー(RHEL系で sudo 権限を持つことが多い)
getent group wheel | cut -d: -f4
# sudo グループメンバー(Debian / Ubuntu)
getent group sudo | cut -d: -f4
# 全ユーザーの sudo 可否確認
for u in $(getent passwd | cut -d: -f1); do
sudo -lU $u 2>/dev/null | grep -q '(ALL' && echo "$u has sudo"
done
パスワード設定状況
# /etc/shadow(root 専用)でパスワード状況確認
sudo awk -F: '{print $1, $2}' /etc/shadow
# alice $6$xxxxxx... ← ハッシュあり = ログイン可
# guest ! ← ロック中
# nobody * ← パスワード無し(ログイン不可)
# 各ユーザーのパスワード状態
sudo passwd -S alice
# alice PS 2026-05-01 0 99999 7 -1 (Password set, SHA512 crypt.)
# L = locked
# NP = no password
# PS = password set
# ロックされているユーザー一覧
sudo awk -F: '$2 ~ /^!/ {print $1}' /etc/shadow
よく使う組合せ
# 「実在する人間ユーザー」のみ抽出(推奨パターン)
getent passwd | \
awk -F: '$3 >= 1000 && $3 < 65534 && $7 !~ /nologin|false/ {print $1}'
# 各ユーザーの最終ログイン
lastlog
# Username Port From Latest
# alice pts/0 192.168.1.10 Wed Jun 11 10:00:00 +0900 2026
# bob **Never logged in**
# 90 日以上ログインしていないユーザー
lastlog -b 90
FAQ
Q: AD / LDAP のユーザーは /etc/passwd に出ない
A: SSSD や nss_ldap 経由のユーザーは /etc/passwd には載りません。getent passwd を使うこと。これは NSS(Name Service Switch)経由なので統合された結果を返します。
Q: ホームディレクトリが無いユーザーは
A: useradd -M で作成すれば作られません。サービス用アカウントは大抵そう。ls /home と /etc/passwd の $6 列を比較すると整合性確認できます。
Q: 一時的にユーザーをロックしたい
A: sudo usermod -L alice でロック(shadow の パスワードハッシュ先頭に ! が付く)。usermod -U で解除。SSH 鍵ログインは別途無効化が必要(鍵ベースは shadow 確認しない)。
ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
子ページはありません
- ディストリビューション
- コマンド一覧
- Linuxのサーバーに登録されているユーザの一覧を確認するコマンド
- リポジトリの一覧の確認
- エラー一覧
- ショートカットキー一覧
- ログを確認する便利なコマンド
- cronの導入と実行方法 (CentOS 7編)
- ディレクトリ内のファイル数を確認
- 複数ファイル内の文字列を一括置換する方法
人気ページ
- 1 Eclipseで「サーバーに追加または除去できるリソースがありません。」の原因と対処法
- 2 tomcat の起動 / 停止ログと catalina.log・catalina.out の違い
- 3 JavaScript base URL 取得方法|window.location.origin と SSR/Node.js 対応
- 4 YouTube Data API v3 エラー一覧|403/400/404 の主要原因と切り分け
- 5 Spring Frameworkのアノテーション一覧
- 6 Laravel エラー一覧|500/Blade/DB 接続/ルーティングの代表エラー
- 7 3Dグラフィックスとは|モデリング/レンダリング/主要ソフトウェア (Blender / Maya)
- 8 【Spring】@Valueアノテーションとは
- 9 CATALINA_HOME の確認方法 (Linux / Mac)
- 10 【Spring】@Autowiredアノテーションとは
最近更新/作成されたページ
- IPv6とは|128bitアドレス・コロン16進表記/::省略・リンクローカル・SLAAC・デュアルスタック NEW 2026-06-22 12:34:44
- MAC アドレスフィルタリングの仕組みと限界 | ネットワーク入門 NEW 2026-06-22 12:19:10
- VPNとは|暗号トンネル・サイト間/リモートアクセス・IPsec/SSL-VPN/WireGuardを解説 NEW 2026-06-22 12:19:10
- WebRTC とは ブラウザ間 P2P の音声・映像・データ通信 | ネットワーク入門 NEW 2026-06-22 12:17:25
- HTTP/2 とは 多重化・HPACK・バイナリフレーム | ネットワーク入門 NEW 2026-06-22 12:17:25
- Web通信プロトコル入門 HTTP/2・HTTP/3・WebSocket・gRPC・WebRTC | ネットワーク入門 NEW 2026-06-22 12:17:25
- gRPC とは HTTP/2 + Protocol Buffers の高速 RPC | ネットワーク入門 NEW 2026-06-22 12:17:25
- HTTP/3 (QUIC) とは UDP ベースの低遅延 Web 通信 | ネットワーク入門 NEW 2026-06-22 12:17:25
- WebSocket とは 全二重リアルタイム通信 ws/wss | ネットワーク入門 NEW 2026-06-22 12:17:25
- 証明書と認証局(CA)とは|X.509・信頼チェーン・DV/OV/EV・失効(CRL/OCSP)を解説 NEW 2026-06-22 12:17:24
- ファイアウォールとは|パケットフィルタ・ステートフル・DMZ・次世代FW(L4/L7)を解説 NEW 2026-06-22 12:17:24
- iptables/nftablesとは|テーブル・チェーン・ルール例・永続化をLinux視点で解説 NEW 2026-06-22 12:17:24
- HAProxy とは frontend/backend と設定例 | ネットワーク入門 NEW 2026-06-22 12:17:24
- CDN とは エッジキャッシュ・TTL・Cloudflare/CloudFront | ネットワーク入門 NEW 2026-06-22 12:17:24
- TLS/SSLの仕組み|ハンドシェイク・暗号スイート・前方秘匿性・証明書検証をわかりやすく解説 NEW 2026-06-22 12:17:24
コメントを削除してもよろしいでしょうか?