当前位置: 首页 > news >正文

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是系统管理员管理用户账户的重要工具。

http://www.gsyq.cn/news/1461360.html

相关文章:

  • 7步快速精通Bambu Studio:3D打印切片软件的完整指南
  • 入手空调,怎么买最划算?别先凑单,先确认房间和安装 - 新闻快传
  • 如何快速搭建Uncle小说阅读器:免费高效的桌面端小说阅读解决方案
  • 基于Arduino Leonardo的智能存钱罐:从传感器到LED的嵌入式实践
  • C# EntityFramework笔记
  • Cline+DeepSeek-V4:终端原生AI工作流的工程化实践
  • Python入门:PyCharm下载安装与汉化教程
  • 2026年郑州喷码机厂家推荐榜:UV喷码机、高解析喷码机、手持喷码机选购全攻略 - 深度智识库
  • 【项目07】基于YOLOv8实现行人检测
  • 2026佛山包包回收榜单,盘活闲置奢包,解锁轻奢资产价值 - 奢侈品回收测评
  • 终极免费SWF反编译工具:JPEXS Free Flash Decompiler完全指南
  • taskt:零代码Windows自动化,解放双手的开源RPA利器
  • 终极指南:一键修复Visual C++运行库,彻底解决“DLL缺失“问题
  • 读博期间应该怎么提升自己的科研能力?
  • 利用PAM8403功放与旧手机打造低成本立体声音响系统
  • 树莓派4 USB SSD启动Ubuntu全攻略:告别SD卡,提升性能与可靠性
  • 酒店前台预订+后台管理全静态页面包,纯HTML/CSS/JS实现,开箱即用适合学生实训
  • 实战部署wvp-GB28181-pro:构建企业级视频监控平台的完整指南
  • 计算机毕业设计之基于echarts的心脏病健康管理大数据可视化系统的设计与实现
  • 计算机毕业设计之基于hadoop的河北省房价数据分析与可视化预测
  • 2026年度上海保鲜蔬菜冷库工程安装企业综合甄选推荐 - 品牌2026
  • 鸿蒙南向开发教程 Day 8:信号量三种类型详解
  • 2026 杭州高端全屋定制优选榜单|5 大品牌从环保、设计、落地全方位测评 - 商业新知
  • 流年寄钻戒,踏遍杭城街巷,找寻善待往事的靠谱回收店 - 奢侈品回收评测
  • 几十页文献一分钟就能读懂,文献解读神器实测
  • 2026北京美国留学中介哪家好?多家机构申请优势盘点 - 品牌2026
  • 3步彻底掌控Windows浏览器生态:EdgeRemover脚本的完整使用手册
  • 基于ESP32与TFT触摸屏的本地化智能灯带控制器DIY指南
  • 基于NodeMCU与Blynk的WiFi伺服电机远程控制系统搭建指南
  • 怎样永久保存微信聊天记录:免费开源工具完整指南