Linux用户、用户组、用户密码管理

本文详细介绍了Linux系统中用户和用户组的管理,包括用户配置文件`/etc/passwd`和密码配置文件`/etc/shadow`的结构,如何创建、删除用户和用户组,以及如何管理用户密码,包括锁定和解锁密码的方法。此外,还提到了系统备份文件以及如何添加用户到多个组,并介绍了一次性修改密码和使用mkpasswd生成随机密码的技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  • 用户配置文件:/etc/passwd

cat /etc/passwd查看linux用户配置文件:在这里插入图片描述
*用户配置文件的内容一共分为7段,通过 :划分,
第一段代表用户名
第二段x代表密码,保存在/etc/shadow文件中
第三段代表uid(用户编号)
第四段代表gid(用户组编号)
第五段代表注释(通常为空或描述用户相关注释)
第六段代表用户家目录
第七段代表用户的shell(通常为/bin/bash,系统创建用户有/sbin/nologin等,nologin表示不能登录)

  • 密码配置文件:/etc/shadow
    在这里插入图片描述
    *密码配置文件与/etc/passwd用户配置文件对应,分为9段,通过 :划分,
    第一段代表用户名,
    第二段代表加密后的密码(两个用户密码相同,加密后的值也不同)
    第三段代表上次更改密码的日期(单位:天,从1970/01/01计算到上次修改密码那天过了多少天的天数)
    第四段代表两次修改密码中间所需的最小天数
    第五段代表密码保持有效的最大天数
    第六段代表密码失效前多少天开始提示用户
    第七段代表用户在没有登录的情况下账号保持有效的最大天数
    第八段代表用户账号的失效时间
    第九段暂无意义,保留域

  • 系统备份文件
    在这里插入图片描述
    *在/etc目录下出现的一些文件名后面加 - 符号的文件是系统自动备份文件,用于误删重要文件时恢复数据

  • 用户组管理
    1.增加用户组:groupadd groupname
    *创建好用户组之后查看用户组配置文件,显示已经创建成功,gid(用户组编号)为1004在这里插入图片描述
    2.创建用户组时指定gid(用户组编号),-g参数
    *指定gid时选择1000以上未被使用的数字,1000以下为系统保留gid在这里插入图片描述
    3.删除用户组:groupdel groupname
    *删除用户组时,如组内有用户则不能删除
    在这里插入图片描述

  • 用户管理
    1.创建用户: useradd username
    *新增用户时如不指定用户组,会创建一个与username相同的组
    在这里插入图片描述
    2.创建用户时指定用户组: -g 参数
    **如下图:创建用户usertest2时,指定用户组为grouptest,创建完成后查看用户配置文件gid为用户组grouptest的gid:1001 *
    在这里插入图片描述
    *补充:
    -u参数:指定用户uid(用户编号)
    -d参数:指定用户家目录
    -s参数:指定用户shell(/bin/bash、nologin等)
    -M参数:在创建用户时,不创建家目录
    创建用户命令还可以是:adduser username

    3.删除用户:userdel username
    *需要注意在使用该命令删除用户后,不会删除用户家目录,ls /home发现usertest2用户目录还在
    在这里插入图片描述
    4.删除用户的同时删除用户家目录:-r 参数
    在这里插入图片描述
    5.usermod命令:更改用户信息
    修改用户uid:usermod -u uid username
    修改用户gid:usermod -g gid username
    修改用户家目录:usermod -d 目录路径 username
    修改用户shell:usermod -s shell路径 username
    锁定用户:usermod -L username
    解锁用户:usermod -U username
    修改用户拓展组:usermod -G groupname username
    *查看用户拓展组信息:id username,linux中用户可以属于多个组,如下图第三列显示的就是用户拓展组
    在这里插入图片描述
    给linux01用户添加用户组linux02:
    在这里插入图片描述
    给linux01用户添加多个组(linux02、linux03):
    *需要给用户添加多个拓展组时,需要写上所有要添加的组用","分隔开,如果第一次添加linux02组,第二次再添加linux03组,那么linux03组会覆盖linux02组,linux01用户的拓展组就只有linux03
    在这里插入图片描述

  • 用户密码管理
    1.更改密码:
    root用户更改密码命令:passwd
    *提示密码难度不够时,再次输入即可更改成功
    在这里插入图片描述
    普通用户更改密码命令:passwd username
    *提示密码长度不够时,再次输入即可更改成功
    在这里插入图片描述
    密码更改成功后查看密码配置文件/etc/shadow中linux01的第二列已经是加密内容:
    *第二列显示"!!"代表用户未设置密码,不能登录
    在这里插入图片描述
    *当第二列显示 "*"号时代表密码被锁定,也是无法登陆的用户
    在这里插入图片描述
    2.锁定与解锁用户密码:
    锁定密码:passwd -l username
    *将刚才创建好密码的用户linux01锁定后查看密码配置文件/etc/shadow第二列密码加密内容前面显示"!!",代表用户密码已被锁定
    在这里插入图片描述
    解锁密码:passwd -u username
    *解锁用户linux01的密码后,查看密码配置文件显示正常
    在这里插入图片描述
    *锁定与解锁用户密码还可以使用上文所说的usermod命令,-L 参数:锁定密码,-U 参数:解锁密码
    3.stdin参数:
    *给用户设置密码时,使用stdin参数,可以直接修改无须二次验证,常用语编写shell脚本中
    在这里插入图片描述
    4.一次性修改密码:(在不使用stdin参数时,也可以无需二次验证修改密码)
    *使用echo -e一次性修改密码,echo命令加上-e参数时,\n可以解析为换行( \t → tab),组合管道符"|"使用可以直接修改密码,无需二次验证
    在这里插入图片描述

  • 密码生成工具:mkpasswd
    1.安装expect包:yum -y install expect
    在这里插入图片描述
    2.生成随机密码:
    *输入mkpasswd即可生成随机密码,-l 参数:指定生成密码的长度,-s 参数:指定生成的随机密码包含几个特殊字符在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值