useradd — 新增使用者帳號
建立新的 Linux 使用者帳號,可指定家目錄與群組。
語法
useradd [選項] 使用者名稱
常用選項
| 選項 | 說明 | 範例 |
|---|---|---|
-m, --create-home |
建立家目錄(預設不建立) | useradd -m alice |
-d 目錄 |
指定家目錄路徑(預設 /home/使用者名稱) | useradd -m -d /home/bob bob |
-s Shell |
指定登入 Shell(預設 /bin/sh) | useradd -m -s /bin/bash alice |
-G 群組,... |
加入指定的附加群組 | useradd -G sudo,docker alice |
-g 群組 |
指定主要群組 | useradd -g developers alice |
-u UID |
指定使用者 ID | useradd -u 1500 alice |
-c 說明 |
設定使用者說明(GECOS 欄位) | useradd -c "Alice Chen" alice |
-r |
建立系統帳號(UID < 1000,無家目錄,無密碼) | useradd -r sysuser |
-e 日期 |
設定帳號過期日期(YYYY-MM-DD) | useradd -e 2026-12-31 tempuser |
使用範例
範例 1:建立完整的使用者帳號
建立有家目錄、bash Shell 的一般使用者,然後設定密碼。
$ sudo useradd -m -s /bin/bash -c 'Alice Chen' alice
sudo passwd alice
New password:
Retype new password:
passwd: password updated successfully
範例 2:建立並加入 sudo 群組
建立使用者並加入 sudo 群組,讓其擁有 sudo 使用權限。
$ sudo useradd -m -s /bin/bash -G sudo alice
範例 3:在 Ubuntu/Debian 使用 adduser(推薦)
adduser 是互動式的友善版本,自動建立家目錄並設定密碼。
$ sudo adduser alice
Adding user 'alice' ...
Enter new UNIX password:
Full Name []: Alice Chen
範例 4:建立服務帳號(無登入 Shell)
用於執行服務程序的系統帳號,不需要登入能力。
$ sudo useradd -r -s /usr/sbin/nologin -d /var/lib/myapp -m myapp
常見錯誤與排錯
useradd: user 'alice' already exists
- 原因
- 使用者名稱已存在。
- 解法
- 用 id alice 確認使用者是否存在,或改用其他使用者名稱。