用户管理
优质
小牛编辑
139浏览
2023-12-01
细节
root 用户为根用户,也就是系统管理员,拥有全部权限
一个用户只能拥有一个 群组编号 ,但是还可以归属于其它附加群组
用户管理的重要配置文件:
/etc/passwd | 用户名 密码位 用户编号 归属群组编号 姓名 $HOME目录 登录Shell |
/etc/shadow | 用户名 已加密密码 密码改动信息 密码策略 |
/etc/group | 群组名 密码位 群组编号 组内用户 |
/etc/gshadow | 群组密码相关文件 |
/etc/sudoers | 用户名 权限定义 权限 |
- 请使用“visudo”命令修改
/etc/sudoers
,而不要直接编辑 - 可以使用 pwconv 命令创建影子密码,将
/etc/passwd
文件中的密码转换到/etc/shadow
文件
su [用户名]
切换到其它用户,默认切换到 root用户。提示密码为目标用户密码
-f | 快速切换,忽略配置文件 |
- | -l | 重新登录 |
-m |-p | 不更改环境变量 |
-c 命令 | 切换后执行命令,并退出切换 |
sudo 命令
以其它用户的身份执行命令,默认以 root 的身份执行。提示密码为当前用户密码
-s | 切换为 root shell |
-i | 切换为 root shell,并初始化 |
-u 用户名|用户编号 | 执行命令的身份 |
-l | 显示自己的权限 |
passwd [用户名]
设定用户密码
-d | 清除密码 |
-l | 锁定账户 |
-e | 使密码过期,在下次登录时更改密码 |
-S | 显示密码认证信息 |
-x 天数 | 密码过期,最大使用时间 |
-n 天数 | 冻结密码,最小使用时间 |
-s | 更改 登录Shell |
-f | 更改用户信息 |
示例:
$passwd Changing password for user (current) UNIX password:#原密码 Enter new UNIX password:#新密码 Retype new UNIX password: #确认新密码
gpasswd 群组名
更改群组
-a 用户名 | 将用户加入群组 |
-d 用户名 | 将用户从群组中删除 |
-r | 删除密码 |
-A 用户名 | 将用户设置为群组管理员(群组管理员或 root 才可以使用 gpasswd 命令) |
-M 用户1,用户2…… | 设置群组成员 |
chsh -s Shell [用户名]
更改登录 Shell
usermod 用户名
修改用户账号
-d 目录 | 设定 $HOME 目录 |
-m | 设定 $HOME 目录时自动建立该目录 |
-s Shell | 修改用户 登录Shell |
-l 新登录名 | 修改为新登录名 |
-u 用户编号 | 修改用户编号 |
g 群组名 | 修改用户归属群组 |
-G 群组名 | 修改用户归属辅组 |
-L | 锁定帐户 |
-U | 解除锁定 |
-e 过期时间 | 设定用户账号过期时间 |
-f 缓冲天数 | 设定密码过期后多长时间关闭账号 |
-c 字符串 | 修改用户备注 |
useradd 用户名
新建用户
-d 目录 | 设定 $HOME 目录 |
-m | 自动建立 $HOME 目录 |
-M | 不自动建立 $HOME 目录 |
-s Shell | 设定用户 登录Shell |
-u 用户编号 | 设定用户编号 |
-g 群组名 | 设定用户归属群组 |
-G 群组名 | 设定用户归属附加群组 |
-n | 不建立以用户名为名称的群组 |
-e 过期时间 | 设定用户账号过期时间 |
-f 缓冲天数 | 设定密码过期后多长时间关闭账号 |
-c 字符串 | 设定用户备注 |
-D [表达式] | 更改预设值 (预设值保存于 /etc/default/useradd 文件中) |
- 新建用户规则保存于
/etc/login.defs
文件中 - 新建用户默认文件保存于
/etc/skel/
目录中。新建用户时,系统自动拷贝此目录下的文件至新建用户的$HOME
目录
userdel 用户名
删除用户
-r | 删除用户相关文件和目录 |
id [用户名]
显示用户 用户编号 群组编号 归属附加群组