ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
| この記事の要点 |
|
useradd と adduser の違い
| コマンド | 主な特徴 | 提供環境 |
|---|---|---|
useradd | 低レベルコマンド、すべて引数指定、すべての主要ディストリ | RHEL / CentOS / Rocky / Alma / Ubuntu 全て |
adduser | Debian/Ubuntu では対話的ラッパー、useradd を内部で呼ぶ | Debian / Ubuntu |
adduser (RHEL) | useradd への単なるシンボリックリンク | RHEL 系 |
本記事では useradd を中心に解説します (全ディストリで挙動が共通)。
基本: ユーザー作成
# 最低限 (RHEL 系では -m が既定で有効、Debian 系では -m 必須)
sudo useradd -m alice
# シェルとホームディレクトリを明示
sudo useradd -m -s /bin/bash -d /home/alice alice
# パスワード設定 (ログイン可能化)
sudo passwd alice
# New password: ********
# Retype new password: ********
# Debian/Ubuntu の対話ラッパー
sudo adduser alice
# → ホーム、シェル、パスワード、フルネーム等を順に聞かれる
主要オプション
| オプション | 意味 |
|---|---|
-m | ホームディレクトリ作成 (/etc/skel をコピー) |
-M | ホームを作らない (システムユーザー) |
-s SHELL | ログインシェル (例: /bin/bash, /usr/sbin/nologin) |
-d DIR | ホームディレクトリパス |
-u UID | UID 指定 |
-g GROUP | 主グループ (デフォルトは同名グループ) |
-G G1,G2 | 副グループ (カンマ区切り) |
-c "COMMENT" | GECOS (フルネーム等) |
-e YYYY-MM-DD | アカウント失効日 |
-r | システムユーザー (UID < 1000、ホーム作らない) |
-N | 同名グループを作らない |
典型例
# 開発者用 (bash, sudo 権限, 副グループに docker)
sudo useradd -m -s /bin/bash -G sudo,docker -c "Alice Tanaka" alice
sudo passwd alice
# UID 固定 (LDAP 統合等)
sudo useradd -m -u 1500 -s /bin/bash bob
# サービス用 (ログイン不可、ホーム無し)
sudo useradd -r -s /usr/sbin/nologin -M -d /var/lib/myapp myapp
# 一時アカウント (失効日付き)
sudo useradd -m -e 2026-12-31 contractor1
関連ファイル
| ファイル | 内容 |
|---|---|
/etc/passwd | ユーザー一覧 (UID, GID, GECOS, ホーム, シェル) |
/etc/shadow | パスワードハッシュ + 有効期限 (root のみ読取) |
/etc/group | グループ一覧 (GID, メンバー) |
/etc/gshadow | グループパスワード |
/etc/login.defs | UID/GID 範囲、パスワードポリシーのデフォルト |
/etc/skel | ホーム作成時にコピーされるテンプレート |
/etc/default/useradd | useradd の既定値 |
/etc/passwd の書式
alice:x:1001:1001:Alice Tanaka:/home/alice:/bin/bash
│ │ │ │ │ │ │
│ │ │ │ │ │ └─ ログインシェル
│ │ │ │ │ └─ ホームディレクトリ
│ │ │ │ └─ GECOS (コメント)
│ │ │ └─ 主 GID
│ │ └─ UID
│ └─ パスワード (x = /etc/shadow 参照)
└─ ユーザー名
ユーザー変更 (usermod)
# シェル変更
sudo usermod -s /bin/zsh alice
# 副グループに追加 (-aG で append、-G だけだと既存を上書きする!)
sudo usermod -aG docker alice
sudo usermod -aG sudo,wheel alice
# ホーム移動
sudo usermod -d /var/home/alice -m alice
# ユーザー名変更 (ホームは別途)
sudo usermod -l alice2 alice
# アカウントロック / 解除
sudo usermod -L alice # ロック (パスワード無効化)
sudo usermod -U alice # 解除
sudo passwd -l alice # 同等
sudo passwd -u alice
ユーザー削除 (userdel)
# ユーザーのみ削除 (ホーム残す)
sudo userdel alice
# ホームとメールスプールも削除
sudo userdel -r alice
# ログイン中でも強制削除 (危険)
sudo userdel -rf alice
# 残ファイル確認
sudo find / -uid 1001 2>/dev/null
パスワード管理 (passwd / chage)
# パスワード設定
sudo passwd alice
# 次回ログイン時に変更強制
sudo passwd -e alice
sudo chage -d 0 alice
# 90 日有効・最低 7 日変更不可
sudo chage -M 90 -m 7 alice
# 失効日を確認
sudo chage -l alice
# Last password change : ...
# Password expires : ...
# パスワードハッシュをスクリプトで一括設定
echo "alice:NewPass123" | sudo chpasswd
グループ操作
# グループ作成
sudo groupadd developers
# GID 指定
sudo groupadd -g 2000 webops
# メンバー追加 / 削除
sudo gpasswd -a alice developers
sudo gpasswd -d alice developers
# グループ削除
sudo groupdel developers
# 所属グループ確認
groups alice
id alice
# uid=1001(alice) gid=1001(alice) groups=1001(alice),27(sudo),999(docker)
sudo 権限の付与
| ディストリ | sudo グループ |
|---|---|
| Ubuntu / Debian | sudo |
| RHEL / CentOS / Rocky / Alma | wheel |
# Ubuntu / Debian
sudo usermod -aG sudo alice
# RHEL 系
sudo usermod -aG wheel alice
# sudoers を直接編集 (絶対 visudo を使う、構文ミスは visudo が検出)
sudo visudo
# alice ALL=(ALL:ALL) ALL # 全コマンド sudo 可
# alice ALL=(ALL) NOPASSWD: /usr/bin/systemctl # パスワードなしで systemctl のみ
# /etc/sudoers.d/ にファイル単位で配置 (推奨)
echo 'alice ALL=(ALL) NOPASSWD: /usr/bin/apt' | \
sudo tee /etc/sudoers.d/alice
sudo chmod 0440 /etc/sudoers.d/alice
sudo visudo -c # 構文チェック
SSH 鍵の配置
# ユーザー作成後、SSH 鍵を配置するのが定石
sudo -u alice mkdir -p /home/alice/.ssh
sudo -u alice chmod 700 /home/alice/.ssh
sudo cp /tmp/alice_pubkey /home/alice/.ssh/authorized_keys
sudo chown alice:alice /home/alice/.ssh/authorized_keys
sudo chmod 600 /home/alice/.ssh/authorized_keys
# ssh-copy-id (簡単)
ssh-copy-id alice@server
一括作成スクリプト
#!/bin/bash
# users.txt: alice bob carol dave
while read name; do
sudo useradd -m -s /bin/bash -G developers "$name"
pass=$(openssl rand -base64 12)
echo "$name:$pass" | sudo chpasswd
sudo chage -d 0 "$name" # 次回変更必須
echo "$name $pass" >> /tmp/initpass.txt
done < users.txt
FAQ
Q: useradd でホームが作られない
A: Debian / Ubuntu では -m 必須。/etc/default/useradd の CREATE_HOME=yes で既定を変更可。
Q: 既存ユーザーの UID を変えたら所有ファイルが orphan に
A: find / -uid 旧UID -exec chown 新UID {} + で所有者を一括変更してください。
Q: コンテナでルートレスにしたい
A: Dockerfile で RUN useradd -m -u 1001 app + USER app。本番ではほぼ必須のセキュリティプラクティス。
ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
子ページ
子ページはありません
同階層のページ
- ユーザー作成
- ユーザー名変更(RENAME USER)
- ユーザー一覧の表示
人気ページ
- 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
- VPNとは|暗号トンネル・サイト間/リモートアクセス・IPsec/SSL-VPN/WireGuardを解説 NEW 2026-06-22 12:19:10
- MAC アドレスフィルタリングの仕組みと限界 | ネットワーク入門 NEW 2026-06-22 12:19:10
- WebRTC とは ブラウザ間 P2P の音声・映像・データ通信 | ネットワーク入門 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
- 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
- WebSocket とは 全二重リアルタイム通信 ws/wss | ネットワーク入門 NEW 2026-06-22 12:17:25
- ファイアウォールとは|パケットフィルタ・ステートフル・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
- 証明書と認証局(CA)とは|X.509・信頼チェーン・DV/OV/EV・失効(CRL/OCSP)を解説 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
コメントを削除してもよろしいでしょうか?