> 软件包与系统管理 > usermod

usermod 命令指南:修改用户帐户属性

`usermod` 命令用于更改 Linux 系统中已创建的用户帐户的属性。可以轻松修改用户的主目录、Shell、组成员资格、到期日期等各种帐户信息,是系统管理员维护现有帐户的必备工具。通过本指南,您将学习 `usermod` 的基本用法和各种选项。

usermod 概述

`usermod` 命令修改由 `useradd` 创建的用户帐户信息,涉及 `/etc/passwd`、`/etc/shadow`、`/etc/group`、`/etc/gshadow` 等系统文件。在用户登录状态下更改帐户信息可能会导致问题,因此需要确认要更改的用户是否已注销,或谨慎操作。所有这些过程都需要管理员权限(`sudo`)。

usermod 的主要角色

`usermod` 命令主要用于以下目的:

主要应用领域

  • 修改用户信息: 更改现有用户帐户的登录名称、主目录、Shell 等。
  • 管理组成员资格: 将用户添加到新组或从现有组中删除。
  • 调整帐户状态: 设置帐户的到期日期或锁定和解锁帐户。
  • 更改 UID/GID: 更改用户的唯一 ID(UID)或基本组 ID(GID)。(需要非常小心)

useradd vs usermod

`useradd` 用于“创建”新帐户,而 `usermod` 用于“修改”已存在帐户的属性。

主要 usermod 命令选项

`usermod` 命令提供了广泛的选项,可以更改用户的各种帐户属性。

1. 更改帐户名称和 ID

2. 更改组成员资格

3. 更改主目录和 Shell

4. 帐户状态及其他

生成的命令:

请尝试组合命令。

描述:

`usermod` 执行命令。

通过组合这些选项,您可以与 AI 一起虚拟地执行命令。

使用示例

`usermod` 命令的各种使用示例,将帮助您有效地更改和管理现有用户帐户的属性。

更改用户名

sudo usermod -l newuser -m -d /home/newuser olduser

将 `olduser` 的登录名称更改为 `newuser`。帐户信息和主目录名称将一并更改。

将用户添加到 'sudo' 组

sudo usermod -aG sudo devuser

将 `devuser` 用户添加到 `sudo` 组,以便可以使用管理员权限。现有组成员资格保持不变。

更改用户的默认 Shell

sudo usermod -s /bin/zsh testuser

将 `testuser` 的默认登录 Shell 更改为 `/bin/zsh`。

锁定用户帐户

sudo usermod -L guestuser

锁定 `guestuser` 帐户,使其无法再登录。这在禁用帐户但不删除时非常有用。

解锁用户帐户

sudo usermod -U guestuser

重新激活之前锁定的 `guestuser` 帐户,使其可以登录。

设置用户帐户到期日

sudo usermod -e 2025-12-31 tempuser

将 `tempuser` 帐户设置为在 2025 年 12 月 31 日自动到期。

更改用户的所有辅助组(移除现有组)

sudo usermod -G developers john

使 `john` 用户仅属于 `developers` 组,并移除之前属于的其他辅助组。


相同类别命令