用户和组
本文最后更新于 2025-11-14,文章内容可能已经过时。
管理员用户UID为0
用户UID从0开始,默认最大为60000
用户组GID从0开始,默认最大为60000
linux一个用户必须至少属于一个组
基本组:一般情况与用户同名,一个用户必须有基本组,基本组只能有一个
附加组:一个用户可以有多个附加组,也可以没有附加组
创建用户
useradd 用户名
id 用户名 #查看用户是否存在,如果存在则查看用户UID和GID
ls /etc/psasswd 所有文件信息都在这个文件中
-u指定用户UID -g指定用户基本组 -G指定附加组
-d 指定家目录,默认为/home/用户名(不可以事先新建用户的家目录)
useradd -d /opt/ nsd001 #指定家目录路径必须已经创建好,useradd不能创建目录
useradd -s /sbin/nologin nsd3 #指定解释器,默认/bin/bash
修改用户信息
usermod -l abc2 nsd2 #将已经存在的用户名nsd2改为abc2
usermod -u 1700 abc2 #将用户名abc2的用户id修改为1700
usermod -s /sbin/nologin abc2 #将用户名abc2的解释器修改为/sbin/nologin
vim /etc/passwd #可以使用vim编辑文件修改用户信息
usermod -d /opt/shell abc2 #修改用户家目录,只修改,不移动
usermod -md /opt/shell abc2 #修改用户家目录,修改并移动
usermod -G C abc2 #修改(重置)用户附加组
usermod -g zhangsan abc #修改用户基本组
切换用户
su - 用户名 #不输用户名,默认选择管理员用户,-刷新用户环境配置
修改密码
在root用户下
修改普通用户密码:passwd 用户名
修改root用户密码:passwd
在普通用户下
su 用户名 #切换到要修改密码的用户
passwd #修改密码
#输入旧密码 输入新密码 输入新密码
非交互式设置密码
echo "qwert" | passwd --stdin zhangsan
用户加密后的密码放在/etc/shadow
第一个字段为用户账号的名称,第二个字段为加密后的密码,第三个字段为上次修改时间,
第四个字段为密码的最短有效时间,默认为0,第五个字段,密码的最长有效天数99999,
第六个字段,密码过期前的有效天数,默认7
删除用户
userdel 用户名 #只删除用户,不删除家目录
userdel -r 用户名 #删除用户,并删除用户家目录
创建用户组
groupadd china
groupadd A
groupadd B
groupadd C
useradd -g A -G B,C nsd2 #创建用户指定用户基本组、附加组组成员管理
组放在/etc/group
查看组的信息 grep 组名 /etc/group
gpasswd 命令(添加附加组)(只能在root用户下使用)
su -
格式:gpasswd [选项] 用户名 组名
-a:添加组成员,每次只能添加一个
gpasswd -a abc2 A
-d:删除组成员,每次只能删一个
gpasswd -d abc2 A
-M:重置组成员列表,可设置多个用户
gpasswd -M 'abc2,abc3' A
gpasswd -M '' A #删除组中所有成员
组管理员(组管理员用户也可以使用)
-A:定义组管理员列表(组管理员可以属于此组也可以不属于此组)
gpasswd -A abc17 feiji
su - abc17
gpasswd -A abc17 feiji
gpasswd -a abc18 feiji
一个组可以有多个组管理员
gpasswd -A 'abc17,abc18' feiji
删除组管理员
方法1
gpasswd -A '' feiji
方法2
vim /etc/gshadow #组的管理员再此文件中第二个字段
删除组(不能删除用户的基本组)
groupdel 组名