usermod#
usermod 是包含在 shadow-utils 內的使用者屬性修改工具
usermod (User Modify) 是 Linux 系統中用於更改現有使用者帳號設定的指令。它能修改
/etc/passwd、/etc/shadow與/etc/group等系統檔案中的資訊。不論是更改使用者名稱、更換預設 Shell、搬移家目錄,或是將使用者加入新的群組(如 sudo),usermod都是系統管理員最常用的帳號維護工具。
Install#
$ sudo apt install passwdSetting in up#
Operate#
sudo usermod [options] [username]
| 參數 | 範例指令 | 說明 |
|---|---|---|
-aG | sudo usermod -aG sudo john | 新增附加群組。將 john 加入 sudo 群組(-a 表示 append,不可省略)。 |
-d -m | sudo usermod -d /home/newdir -m john | 搬移家目錄。更改家目錄路徑並將舊資料移動(Move)到新位置。 |
-l | sudo usermod -l newname oldname | 修改用戶名。更改使用者的登入名稱(家目錄名稱不會自動更改)。 |
-s | sudo usermod -s /usr/bin/zsh john | 修改 Shell。更改使用者登入後預設使用的 Shell 環境。 |
-L | sudo usermod -L john | 鎖定帳號(Lock)。在密碼欄位前加「!」,使該使用者暫時無法登入。 |
-U | sudo usermod -U john | 解除鎖定(Unlock)。移除密碼欄位前的「!」,恢復登入權限。 |
-e | sudo usermod -e 2025-06-01 john | 設定過期日。手動設定帳號自動失效的日期。 |
| 操作目標 | 常用參數組合 | 詳細解釋 |
|---|---|---|
| 賦予管理權限 | -aG sudo (或 wheel) | 透過將使用者加入特權群組,使其能使用 sudo 執行指令。 |
| 變更主群組 | -g <group_name> | 更改使用者的主要群組 GID(慎用,會影響新建立檔案的屬性)。 |
| 凍結離職帳號 | -L 或 -e 1 | 快速禁止使用者存取系統,同時保留其檔案與設定。 |
| 更換工作環境 | -s /bin/bash | 讓使用者在重新登入後切換到指定的 Shell 介面。 |
Reference#
Official docs: