news 2026/6/4 16:46:02

Linux命令:usermod

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Linux命令:usermod

usermod 命令

基本介绍

usermod(User Modify)是 Linux 系统中用于修改用户账户信息的命令。它可以修改用户的用户名、用户ID(UID)、用户组、主目录、登录shell等属性。usermod是系统管理员管理用户账户的重要工具。

资料合集:https://pan.quark.cn/s/6fe3007c3e95https://pan.quark.cn/s/561de99256a5https://pan.quark.cn/s/985f55b13d94https://pan.quark.cn/s/d0fb20abd19a

语法

usermod [OPTIONS] USERNAME

常用选项

基本选项

  • -c, --comment=COMMENT:设置用户注释信息(GECOS字段)
  • -d, --home=HOME_DIR:设置用户主目录
  • -e, --expiredate=EXPIRE_DATE:设置账户过期日期(格式:YYYY-MM-DD)
  • -f, --inactive=INACTIVE:设置账户过期后多少天禁用
  • -g, --gid=GROUP:设置用户的主组
  • -G, --groups=GROUPS:设置用户的附加组(逗号分隔)
  • -h, --help:显示帮助信息
  • -l, --login=NEW_LOGIN:修改用户名
  • -L, --lock:锁定用户账户
  • -m, --move-home:移动用户主目录
  • -o, --non-unique:允许使用非唯一的UID
  • -p, --password=PASSWORD:设置用户密码(加密格式)
  • -R, --root=PATH:指定根目录路径
  • -s, --shell=SHELL:设置用户登录shell
  • -u, --uid=UID:设置用户ID
  • -U, --unlock:解锁用户账户
  • -Z, --selinux-user=SEUSER:设置SELinux用户映射

使用示例

1. 修改用户名

usermod-lnewname oldname

2. 修改用户UID

usermod-u1001username

3. 修改用户主组

usermod-gdevelopers username

4. 添加用户到附加组

usermod-Gsudo,developers username

5. 添加用户到附加组(保留现有组)

usermod-aGsudousername

6. 修改用户主目录

usermod-d/home/newhome username

7. 修改主目录并移动文件

usermod-md/home/newhome username

8. 修改登录shell

usermod-s/bin/bash usernameusermod-s/usr/bin/zsh username

9. 锁定用户账户

usermod-Lusername

10. 解锁用户账户

usermod-Uusername

11. 设置账户过期日期

usermod-e2025-12-31 username

12. 设置账户过期后禁用天数

usermod-f7username

13. 设置用户注释

usermod-c"John Doe, IT Department"username

14. 设置SELinux用户映射

usermod-Zstaff_u username

输出格式说明

成功执行

# 无输出,直接修改成功

错误输出示例

usermod: user 'username' does not exist usermod: UID '1001' already exists

用户修改流程

修改用户信息的步骤

# 1. 查看用户当前信息idusernamecat/etc/passwd|grepusername# 2. 修改用户名usermod-lnewname oldname# 3. 修改UIDusermod-u1001username# 4. 修改主目录(并移动文件)usermod-md/home/newhome username# 5. 添加到附加组usermod-aGsudousername# 6. 验证修改idusername

相关文件

文件说明
/etc/passwd用户账户信息
/etc/group用户组信息
/etc/shadow用户密码(加密)
/home/username用户主目录

实用技巧

批量修改用户

#!/bin/bash# 修改多个用户的shellforuserinuser1 user2 user3;doecho"Modifying shell for$user..."usermod-s/bin/bash"$user"done

创建受限用户

#!/bin/bashUSERNAME="limiteduser"# 创建用户useradd-m"$USERNAME"# 设置受限shellusermod-s/usr/bin/rbash"$USERNAME"# 设置账户过期usermod-e2025-12-31"$USERNAME"echo"User$USERNAMEcreated with restrictions"

修改用户并同步文件权限

#!/bin/bashOLD_UID=1000NEW_UID=1001USERNAME="username"# 修改UIDusermod-u"$NEW_UID""$USERNAME"# 更新文件所有权find/-user"$OLD_UID"-execchown"$NEW_UID"{}\;2>/dev/null

检查用户信息

# 查看用户详细信息idusername# 查看用户密码状态passwd-Susername# 查看用户所属组groupsusername

相关命令

  • useradd:添加用户
  • userdel:删除用户
  • groupadd:添加用户组
  • groupdel:删除用户组
  • id:显示用户和组信息
  • passwd:设置用户密码
  • chown:修改文件所有者
  • chgrp:修改文件组

注意事项

  1. 权限要求usermod需要 root 权限
  2. 用户登录:修改用户名或UID前,应确保用户没有运行中的进程
  3. UID唯一性:默认情况下UID必须唯一,使用-o选项允许非唯一UID
  4. 主目录移动:使用-m选项会移动用户主目录的内容
  5. 文件所有权:修改UID后,旧UID拥有的文件需要手动更新所有权
  6. 密码设置-p选项需要提供加密后的密码
  7. SELinux:修改用户后可能需要更新SELinux上下文

总结

usermod是 Linux 系统中修改用户账户信息的工具。它可以修改用户名、UID、GID、主目录、登录shell等属性。修改用户信息时应注意用户的当前状态,必要时先终止用户进程。usermod是系统管理员管理用户账户的重要工具。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/4 16:43:59

她的草本模式小程序开发

她的草本模式小程序的开发需要结合植物识别、健康管理或相关功能,以下为关键开发步骤:功能需求分析明确小程序的核心功能,例如植物识别、草本知识库、健康建议或电商模块。用户调研可帮助确定目标群体的具体需求,如园艺爱好者或健…

作者头像 李华
网站建设 2026/6/4 16:40:03

LGTV Companion:Windows电脑与LG电视的智能联动终极指南

LGTV Companion:Windows电脑与LG电视的智能联动终极指南 【免费下载链接】LGTVCompanion Power On and Off WebOS LG TVs together with your PC 项目地址: https://gitcode.com/gh_mirrors/lg/LGTVCompanion 你是否曾经梦想过,当你坐在电脑前准备…

作者头像 李华
网站建设 2026/6/4 16:39:15

UVa 384 Slurpys

题目描述 基于一组约束识别字符串是一个常见的计算问题。 Slurpy\texttt{Slurpy}Slurpy 是一种具有特定属性的字符串。你的程序将读取字符串并判断它们是否为 Slurpy\texttt{Slurpy}Slurpy。 定义 Slump\texttt{Slump}Slump 是一个满足以下属性的字符串: 第一个字符…

作者头像 李华
网站建设 2026/6/4 16:38:35

SourceGit:从命令行到可视化,5个提升Git效率的思维转变

SourceGit:从命令行到可视化,5个提升Git效率的思维转变 【免费下载链接】sourcegit Windows/macOS/Linux GUI client for GIT users 项目地址: https://gitcode.com/gh_mirrors/so/sourcegit 你是否曾经在复杂的Git命令中迷失方向?是否…

作者头像 李华
网站建设 2026/6/4 16:36:11

如何免费激活IDM完整版:终极指南与3分钟快速教程

如何免费激活IDM完整版:终极指南与3分钟快速教程 【免费下载链接】IDM-Activation-Script-ZH IDM激活脚本汉化版 项目地址: https://gitcode.com/gh_mirrors/id/IDM-Activation-Script-ZH 还在为Internet Download Manager(IDM)的30天…

作者头像 李华