adduser#
adduser 是基於 useradd 之上的高階互動式帳號建立工具
adduser 是一個 Perl 腳本,它呼叫底層的
useradd指令,但提供更直覺、互動式的操作流程。當你執行adduser時,系統會自動幫你建立家目錄、從/etc/skel複製初始設定檔,並主動提示你輸入密碼與使用者詳細資訊(如全名、電話等)。在 Debian 與 Ubuntu 系統中,這是推薦使用的標準帳號管理工具。
Install#
$ sudo apt install adduserSetting in up#
Operate#
sudo adduser [username]
| 參數 | 範例指令 | 說明 |
|---|---|---|
--home | sudo adduser --home /data/john john | 自定義家目錄。指定使用者家目錄的路徑,而非預設的 /home/username。 |
--shell | sudo adduser --shell /bin/zsh john | 指定登入 Shell。設定使用者預設使用的 Shell 程式。 |
--ingroup | sudo adduser --ingroup devs john | 指定主要群組。將新使用者加入特定的主要群組。 |
--disabled-password | sudo adduser --disabled-password john | 不設定密碼。建立帳號但不提示輸入密碼(常用於自動化或 SSH key 登入)。 |
--system | sudo adduser --system mysql | 建立系統使用者。建立一個用於執行服務的系統級帳號。 |
--no-create-home | sudo adduser --no-create-home john | 不建立家目錄。即使是普通使用者也不建立家目錄空間。 |
adduser 與 useradd 的主要差異#
| 特性 | useradd (底層工具) | adduser (互動工具) |
|---|---|---|
| 操作方式 | 指令參數式(Non-interactive) | 互動式問答(Interactive) |
| 家目錄 | 預設不建立(需加 -m) | 預設自動建立並配置 |
| 密碼設定 | 需手動執行 passwd | 建立過程中自動提示設定 |
| 設定檔複製 | 需手動指定 | 自動從 /etc/skel 複製 |
| 適用場景 | Shell 腳本、自動化環境 | 一般系統管理、手動新增用戶 |
Reference#
Official docs: