Linux(Centos 7.6)命令详解:usermod

Linux基础命令[22]-usermod 操作一般都有增删改,usermod 就是用来修改已存在用户的属性的,包括家目录、UID、组、有效期等等。 阅读详情

1.命令作用

修改用户帐号(modify a user account)

2.命令语法

Usage: usermod [options] LOGIN

3.参数详解

OPTION:

  • -c, --comment COMMENT,给帐户添加/修改注释信息,会显示在/etc/passwd文件中
  • -d, --home HOME_DIR,用户帐户的新主/家目录
  • -e, --expiredate EXPIRE_DATE,设置帐户过期日期为EXPIRE_DATE
  • -f, --inactive INACTIVE,设置密码过期后可登录宽限的时间为INACTIVE
  • -g, --gid GROUP,强制使用GROUP作为用户的新用户组
  • -G, --groups GROUPS,添加/修改帐户的补充组列表,即添加/修改用户的附加用户组
  • -a, --append,-G是修改或者无到有的添加,加上-a参数是追加附加用户组
  • -h, --help,显示此帮助信息并退出
  • -l, --login NEW_LOGIN,登录名的新值
  • -L, --lock,锁定用户帐户
  • -m, --move-home,将主目录的内容移动到新位置(仅与-d一起使用)
  • -o, --non-unique ,允许使用重复的(非唯一的)UID,需要与-u参数一起使用
  • -p, --password PASSWORD,指定加密的密码字符串,PASSWORD是加密的字符串,可在/etc/shadow文件中第二个字段查看
  • -R, --root CHROOT_DIR,指定chroot目录执行命令(参考chroot命令用法)
  • -s, --shell SHELL,修改帐户的登录shell,一般是'-s /bin/bash',也可以指定'/bin/zsh',默认值可在useradd -D中查看
  • -u, --uid UID,用户帐户的新UID
  • -U, --unlock,解锁用户帐户
  • -Z, --selinux-user SEUSER,用户帐户的新SELinux用户映射

4.常用用例

4.1.给用户添加/修改注释

[root@node1 ~]# getent passwd user1
user1:x:1001:1001::/home/user1:/bin/bash
[root@node1 ~]# usermod -c 'This is user1;' user1
[root@node1 ~]# getent passwd user1
user1:x:1001:1001:This is user1;:/home/user1:/bin/bash
[root@node1 ~]# usermod -c 'This is linux user1;' user1
[root@node1 ~]# getent passwd user1
user1:x:1001:1001:This is linux user1;:/home/user1:/bin/bash
[root@node1 ~]# 

4.2.修改用户家目录

# 方式一
[root@node1 ~]# getent passwd user1
user1:x:1001:1001::/home/user1:/bin/bash
[root@node1 ~]# usermod -d /opt/user1 user1    # 注意修改后不能自动生成/opt/user1目录,需要手动创建
[root@node1 ~]# getent passwd user1
user1:x:1001:1001::/opt/user1:/bin/bash
[root@node1 ~]# 

# 方式二
[root@node1 ~]# getent passwd user1
user1:x:1001:1001::/home/user1:/bin/bash
[root@node1 ~]# usermod -md /opt/user1 user1   # 与-m一起使用,家目录会移动到修改后的目录处
[root@node1 ~]# getent passwd user1
user1:x:1001:1001::/opt/user1:/bin/bash
[root@node1 ~]# ll /opt/user1/
total 0
[root@node1 ~]# ll /home/user1/
ls: cannot access /home/user1/: No such file or directory
[root@node1 ~]# 

4.3.设置/修改账户过期时间

[root@node1 ~]# chage -l user1
Last password change					            : Jun 10, 2025
Password expires					                : never
Password inactive					                : never
Account expires						                : never
Minimum number of days between password change		: 0
Maximum number of days between password change		: 99999
Number of days of warning before password expires	: 7
[root@node1 ~]# 
[root@node1 ~]# usermod -e "2025-12-31" user1
[root@node1 ~]# 
[root@node1 ~]# chage -l user1
Last password change					            : Jun 10, 2025
Password expires					                : never
Password inactive					                : never
Account expires						                : Dec 31, 2025
Minimum number of days between password change		: 0
Maximum number of days between password change		: 99999
Number of days of warning before password expires	: 7
[root@node1 ~]# 

4.4.设置/修改密码过期后宽限时间

[root@node1 ~]# passwd -S user1       # 执行输出的-1是不会密码过期;还可以使用cat /etc/shadow | grep user1查看
user1 LK 2025-06-10 0 99999 7 -1 (Password locked.)
[root@node1 ~]# usermod -f 11 user1
[root@node1 ~]# passwd -S user1       # 执行输出11表示密码过期10天后不能登录
user1 LK 2025-06-10 0 99999 7 11 (Password locked.)
[root@node1 ~]# 

4.5.修改用户组及其附加用户组

[root@node1 ~]# groups user1
user1 : user1
[root@node1 ~]# usermod -g userg user1                  # 修改用户组
[root@node1 ~]# groups user1
user1 : userg
[root@node1 ~]# usermod -G usergroup,usergroup1 user1   # 添加附加用户组
[root@node1 ~]# groups user1
user1 : userg usergroup usergroup1 
[root@node1 ~]# usermod -G usergroup user1              # 修改附加用户组
[root@node1 ~]# groups user1
user1 : userg usergroup
[root@node1 ~]# usermod -aG usergroup1 user1            # -a控制-G是添加附加用户组,不是修改
[root@node1 ~]# groups user1
user1 : userg usergroup usergroup1
[root@node1 ~]# 

4.6.修改用户名称

[root@node1 ~]# getent passwd user1
user1:x:1001:1006::/home/user1:/bin/bash
[root@node1 ~]# usermod -l user11 user1
[root@node1 ~]# getent passwd user1
[root@node1 ~]# getent passwd user11          # 用户名称修改了,但是家目录没有改变
user11:x:1001:1006::/home/user1:/bin/bash
[root@node1 ~]# 

4.7.锁定用户或解锁用户

# 会话一:
[root@node1 ~]# cat /etc/shadow | grep user1
user1:$1$6XkcPAPC$4aP24I21Kqm3kJNSZm88Q0:20249:0:99999:7:::
[root@node1 ~]# usermod -L user1
[root@node1 ~]# cat /etc/shadow | grep user1   # 锁定后,第二列信息前会添加一个感叹号!
user1:!$1$6XkcPAPC$4aP24I21Kqm3kJNSZm88Q0:20249:0:99999:7:::
[root@node1 ~]# usermod -U user1
[root@node1 ~]# cat /etc/shadow | grep user1
user1:$1$6XkcPAPC$4aP24I21Kqm3kJNSZm88Q0:20249:0:99999:7:::
[root@node1 ~]# 

# 会话二: 密码锁定验证
[user1@node1 ~]$ su - user1  # 非root用户执行切换,需要输入密码,锁定后切换会提示Authentication failure
Password: 
su: Authentication failure
[user1@node1 ~]$ 

4.8.修改用户UID(不/可重复)

[root@node1 ~]# getent passwd user1
user1:x:1001:1001::/home/user1:/bin/bash
[root@node1 ~]# getent passwd user2
user2:x:1002:1002::/home/user2:/bin/bash
[root@node1 ~]# 
[root@node1 ~]# usermod -u 1001 user2      # 没有-o参数修改uid时,uid不能重复
usermod: UID '1001' already exists
[root@node1 ~]# usermod -o -u 1001 user2   # 指定-o参数修改uid时,uid可重复,需要与-u参数一起使用
[root@node1 ~]# 
[root@node1 ~]# getent passwd user2
user2:x:1001:1002::/home/user2:/bin/bash
[root@node1 ~]# 

4.9.指定加密串修改用户密码

[root@node1 ~]# openssl passwd user1pd           # 生成user1pd的加密字符串,仅支持不超过8位数的密码
IA20qhrzYizyY
[root@node1 ~]# usermod -p IA20qhrzYizyY user1   # 通过加密字符串设置用户密码
[root@node1 ~]# cat /etc/shadow | grep user1     # 设置后会将加密字符串添加到/etc/shadow
user1:IA20qhrzYizyY:20249:0:99999:7:::
[root@node1 ~]# 

4.10.修改用户shell

[root@node1 ~]# getent passwd user1
user1:x:1001:1001::/home/user1:/bin/bash
[root@node1 ~]# usermod -s /bin/zsh user1
[root@node1 ~]# getent passwd user1
user1:x:1001:1001::/home/user1:/bin/zsh
[root@node1 ~]# 

4.11.-Z参数

[root@node1 ~]# id -Z           # 查看selinux 用户列表
unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
[root@node1 ~]# ps -Z $$        # 查看selinux 用户列表
LABEL                              PID TTY      STAT   TIME COMMAND
unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023 22859 pts/4 Ss   0:00 -bash
[root@node1 ~]# semanage login -l        # 查看selinux用户与系统用户的关联列表

Login Name           SELinux User         MLS/MCS Range        Service

__default__          unconfined_u         s0-s0:c0.c1023       *
root                 unconfined_u         s0-s0:c0.c1023       *
system_u             system_u             s0-s0:c0.c1023       *
user10               unconfined_u         s0-s0:c0.c1023       *
[root@node1 ~]# usermod -Z unconfined_u user1          # selinux用户与系统用户关联
[libsemanage]: user user10 not in password file
[root@node1 ~]# semanage login -l                      # 关联查看

Login Name           SELinux User         MLS/MCS Range        Service

__default__          unconfined_u         s0-s0:c0.c1023       *
root                 unconfined_u         s0-s0:c0.c1023       *
system_u             system_u             s0-s0:c0.c1023       *
user1                unconfined_u         s0-s0:c0.c1023       *
user10               unconfined_u         s0-s0:c0.c1023       *
[root@node1 ~]# 
Linux学习(7)------usermod命令 版权声明:本文为博主(汉诺塔少年)原创文章,非商用自由转载-保持署名-著名出处,谢谢。https://blog.csdn.net/qq_40780910/article/details/89474824 目录 一.悄悄话: 例子1: 二.usermod命令 例子2:使用-G参数 例子3:使用-a -G参数 例子4:单独使用-a 例子4:参数-g的使用 参... 阅读详情

相关推荐

CentOS 7用户管理:命令详解与实战指南

本文档详细介绍了CentOS 7中的用户管理命令及其选项、命令格式。通过掌握这些命令,读者可以轻松地创建、删除、修改用户,以及查看用户的相关信息。在CentOS 7系统中,用户管理是一项至关重要的任务,它涉及到系统的安全性和稳定性。本文档将详细介绍CentOS 7中的用户管理命令及其选项、命令格式,帮助读者更好地掌握这一技能。在Linux系统中,用户管理主要涉及到用户的创建、删除、修改以及用户组的创建、删除、修改等操作。命令类似,可以用来修改用户的描述、主目录、用户组、登录Shell等属性。

JohnnyCS的博客 959

usermod详解

需要注意的是,对于 `usermod` 命令修改了一些用户属性之后,可能需要在相关配置文件中修改对应字段,例如 `/etc/passwd`、`/etc/shadow`、`/etc/group` 等,以使修改生效。

fmnsliudi的博客 4993

兴安雪学运维之:CentOS用户管理命令详解之一

一个岁数很大的小白,转Linux运维,用户管理命令是运维学习常用命令的重中之重,需要反复理解,勤于练习,不断实践,才能熟练运用,个人结合学习实际,加以整理,仅供学习参考,不足之处,敬请批评指正: 一、用户管理常用命令: ...

m0_68478957的博客 1366

Linux命令之usermod命令

usermod命令修改系统帐户及账户相关的各项属性。如果用户的数字用户ID、用户名或用户的主目录发生更改,则必须确保在执行此命令时,命名用户未执行任何进程。usermod在Linux上对此进行检查,但仅检查用户是否根据其他架构上的utmp登录。您必须手动更改任何crontab文件或at作业的所有者。必须在NIS服务器上进行涉及NIS的任何更改。usermod命令的操作修改的是/etc/passwd和/etc/shadow这两个文件中的内容。.........

月生的静心苑 3万+

Rockchip平台Android相机HAL3开发实战:从配置到调试全流程解析

本文深入解析了Rockchip平台Android相机HAL3的开发全流程。从理解AAL与PSL核心架构、解析关键配置文件(如camera3_profiles.xml和Tuning文件),到搭建编译环境、进行增量部署,并提供了系统日志分析、V4L2调试等高级问题排查技巧,为开发者提供了一套从配置到调试的实战指南。

docker7nomad的博客 843

我的AI个人公司成立:基于Skills与Qwen大模型的智能问答平台实战开发+龙虾团队

微学AI推出数字员工矩阵,包含10个核心AI角色(总经理、秘书、工程师等),每个角色具备专属技能模块。系统采用FastAPI+Vue3技术栈,核心功能包括:基于SkillLoader的动态技能管理(支持脚本执行和文档加载)、WebSocket流式输出、多轮对话上下文管理。通过模块化架构实现AI自驱协作,可自主完成从需求分析到开发落地的全流程。项目亮点在于声明式技能配置和实时交互能力,打破传统办公壁垒,提升工作效率。

微学AI的博客 1624

【Shell 命令集合 系统管理 】Linux 修改用户的属性和配置 usermod命令 使用指南

usermod命令是Linux系统中的一个命令,用于修改用户的属性和配置。通过usermod命令,可以对用户的各种属性进行修改,如用户的用户名、用户ID、用户组ID、用户主目录、用户登录shell等。

探索C++编程的奥秘,分享深入的技术见解和实践,旨在激发读者创造力与解决问题的思维。 7206

AD快速上手笔记

本文详细介绍了使用Altium Designer从零创建PCB项目全流程:新建工程、绘制原理图(元件放置、连线、电源端口)、编译检查、生成PCB、布局布线(含铺铜)、DRC检查及输出Gerber与钻孔文件。重点强调了库选择、参数修改、层切换、铺铜设置和生产文件导出规范,确保设计无误,便于顺利下单生产。

qq_53529450的博客 41

Centos中用户相关操作(用户管理、用户组管理、超级用户、伪用户)

Centos中用户相关操作(用户管理、用户组管理、超级用户、伪用户)

IT之一小佬的博客 1万+

Raspberry Pi Pico + Inmp441麦克风(Pio模拟I2s)<2>

摘要:本文介绍了在Raspberry Pi Pico上使用PIO(Programmable I/O)接收I2S数字麦克风音频数据并保存为WAV文件的方法。项目采用双PIO状态机设计,一个生成I2S时钟信号(WS+SCK),另一个接收24位左声道数据并转换为16位格式。文章详细说明了接线方式、参数设置、WAV文件头构造、PIO汇编程序实现以及数据转换处理流程。项目在MicroPython环境下实现16kHz采样率、6秒时长录音,具有时序精确、稳定可靠的特性,并提供了进一步拓展的可能性,如双声道支持、实时频谱分

技术需要沉淀,需要碰撞。 658

【蓝桥杯单片机组第八届省赛】— 基于单片机的电子钟程序设计与调试

1、初赛试题 1.1 基本要求 (1)使用 CT107D 单片机竞赛板, 完成“电子钟” 功能的程序设计与调试; (2)设计与调试过程中,可参考组委会提供的“资源数据包”; (3)Keil 工程文件以准考证号命名, 完成设计后, 提交完整、 可编译的 Keil工程文件到服务器。 1.2 硬件框图 1.3功能描述 1.3.1 初始化 (1)关闭蜂鸣器、继电器等无关外...

Fanjufei的博客 3661

linux账号和权限管理命令

一、系统用户的类型普通用户(权限受限的用户)超级管理员程序用户普通用户:500 - 60000系统用户:1 - 499centos7普通用户:1000 - 60000系统用户:1 - 999三、组基本组:有且唯一附加组:可有可无,可以有多个。

2301_79777782的博客 491

ardupilot开发 --- mavlink签名加密 篇

ardupilot开发 --- mavlink签名加密

记录老板的每次pua,分享领导每天的毒鸡汤... 1235

用户和用户组

Linux 权限管控单元是用户级别和用户组级别 !!

深入挖掘,筑基为先;知其然,知其所以然。 776

Linux(31)Rockchip RK3568 Ubuntu22.04上部署 Docker: 问题与解决方案

本博客在总结这些问题及其解决方案,为遇到类似问题的兄弟提供参考,如果我后续有碰到其他Docker 问题也会在此更新补充。

我其实什么都不会 1645

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

linux-5 基础学习

组创建:groupadd groupadd [option]..group_name -g : GID:指明GID号[GID_MIN,GID_MAX] -r: 创建系统组 centos 6:ID<500 centos 7:ID<1000 查看用户相关的ID信息:id id [option]..[USER] -u: UID ...

新手上路 161

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

Linux usermod命令教程:如何修改用户属性(附案例详解和注意事项)

usermod命令是Linux系统中用来修改用户属性的命令。它可以修改用户的登录名、家目录、登录shell、用户组等信息。

u012964600的博客 5375

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

Linux种修改用户主目录命令,usermod命令怎么修改用户主目录

有一台CentOS的服务器,原来建的一个用于ftp的用户帐号,制定一个特定的目录,现在需要修改这个用户的home_dir。只需要使用usermod -d /new/home_dir -U username 命令就可以更改了。下面跟着学习啦小编一起来了解一下usermod命令修改用户主目录的方法吧。usermod命令怎么修改用户主目录参考如下linux常用命令之usermod命令用法。方法1,可以修...

weixin_26971157的博客 8613

linux usermod a,linux用户管理(useradd,usermod,suerdel命令详解)

linux用户管理(useradd,usermod,suerdel命令详解)新增用户使用命令 adduser 或 useradd 添加用户。Centos下useradd与adduser命令没有区别,都会在home下自动创建目录,自动选择shell环境,没有设置密码,需要使用passwd命令修改密码。同样也会自动创建于用户名同名的组。注意:在Ubuntu下useradd与adduser有所不同use...

weixin_36047538的博客 1109

Usermod 命令详解

参考资料:usermod manpage usermod - 修改用户帐户信息 modify a user account usermod [options] user_name usermod 命令修改系统帐户文件来反映通过命令行指定的变化 选项(options) -a|--append ##把用户追加到某些组中,仅与-G选项一起使用 -c|--comment ##修改/etc/pass...

ddd123789999的博客 357

Linux CentOS常用命令

Linux CentOS常用命令

lihefei_coder的博客 6652

Linux基础命令---修改用户信息usermod

usermod         修改用户的信息,包括用户名、密码、家目录、uid等。         此命令的适用范围:RedHat、RHEL、Ubuntu、CentOS、SUSE、openSUSE、Fedora。   1、语法         usermod  [选项]  [参数]   2、选项列表 选项 说明 --help ...

wj78080458的专栏 2856

Linux——Centos 7 账户管理命令(用户篇)useradd usermod userdel

一、命令介绍 useradd 用于创建新的用户 usermod 用于修改用户属性 userdel 用于删除用户 ---------------------------------------------------------------------------------------------------------------------------- 二、...

weixin_30718391的博客 815

CentOS7-命令-修改用户(usermod)

CentOS7修改用户命令 参数: -u 修改UID -g 修改属于的组 -s 修改登录解释器 修改用户UID为 6666 我就修改我之前的kali2用户了 usermod -u 6666 kali2 修改其他是同理的

weixin_44257023的博客 2545

linux Centos7账号和权限管理

目录介绍实验目的: 了解常见的账号配置文件学会管理用户账号、组账号学会设置目录或文件的权限学会设置目录或文件的归属 实验内容:1.了解账号文件,显示用户账号信息:2.显示新用户账号信息:3.了解保存密码字串、密码有效期等信息文件:4.账号添加(简单)6. 了解用户配置文件,设置登录后自动打开网络、关闭防火墙和安全访问。7. 设置/更改用户口令命令使用8. 修改用户账号的属性: 9.用户删除命令:userdel10. 了解组账号文件11. 添加组账号命令:groupadd12 .添加/删除组成员命令 13.删

shaxiao_的博客 2581
上一篇: Linux(Centos 7.6)命令详解:useradd
下一篇: Linux(Centos 7.6)命令详解:userdel
豆是浪个
博客等级 码龄2年 2564粉丝 138原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

豆是浪个

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值