- 开发无止境 -
Data: 2015-09-13 17:10:58Form: JournalClick: 12
Linux
用户和用户组管理useradd
新建用户语法:useradd [选项] 用户名
编号 | 选项 | 说明 |
---|---|---|
1 | -u | UID 手工指定用户的 UID,注意 UID 的范围(不要小于 500)。 |
2 | -d 主目录 | 手工指定用户的主目录。主目录必须写绝对路径,而且如果需要手工指定主目录,则一定要注意权限; |
3 | -c 用户说明 | 手工指定/etc/passwd 文件中各用户信息中第 5 个字段的描述性内容,可随意配置; |
4 | -g 组名 | 手工指定用户的初始组。一般以和用户名相同的组作为用户的初始组,在创建用户时会默认建立初始组。一旦手动指定,则系统将不会在创建此默认的初始组目录。 |
5 | -G 组名 | 指定用户的附加组。我们把用户加入其他组,一般都使用附加组; |
6 | -s shell | 手工指定用户的登录 Shell,默认是 /bin/bash; |
7 | -e 曰期 | 指定用户的失效曰期,格式为 "YYYY-MM-DD"。也就是 /etc/shadow 文件的第八个字段; |
8 | -o | 允许创建的用户的 UID 相同。例如,执行 "useradd -u 0 -o usertest" 命令建立用户 usertest,它的 UID 和 root 用户的 UID 相同,都是 0; |
9 | -m | 建立用户时强制建立用户的家目录。在建立系统用户时,该选项是默认的; |
10 | -r | 创建系统用户,也就是 UID 在 1~499 之间,供系统程序使用的用户。由于系统用户主要用于运行系统所需服务的权限配置,因此系统用户的创建默认不会创建主目录。 |
# 创建 欧阳克 用户
useradd ouyangke
# 家目录 会多个ouyangke目录
cd /home
ll
# 创建 php 用户,家目录改变位置
useradd -d /www/php php
备:新创建的用户,没有密码,无法使用远程登陆
passwd
修改用户密码语法:passwd [选项] 用户名
编号 | 选项 | 说明 |
---|---|---|
1 | -S | 查询用户密码的状态,也就是 /etc/shadow 文件中此用户密码的内容。仅 root 用户可用; |
2 | -l | 暂时锁定用户,该选项会在 /etc/shadow 文件中指定用户的加密密码串前添加 "!",使密码失效。仅 root 用户可用; |
3 | -u | 解锁用户,和 -l 选项相对应,也是只能 root 用户使用; |
4 | --stdin | 可以将通过管道符输出的数据作为用户的密码。主要在批量添加用户时使用; |
5 | -n 天数 | 设置该用户修改密码后,多长时间不能再次修改密码,也就是修改 /etc/shadow 文件中各行密码的第 4 个字段; |
6 | -x 天数 | 设置该用户的密码有效期,对应 /etc/shadow 文件中各行密码的第 5 个字段; |
7 | -w 天数 | 设置用户密码过期前的警告天数,对于 /etc/shadow 文件中各行密码的第 6 个字段; |
8 | -i 日期 | 设置用户密码失效日期,对应 /etc/shadow 文件中各行密码的第 7 个字段。 |
# 修改ouyangke密码
passwd ouyangke
# root账号 查看ouyangke密码
passwd -S ouyangke
# ouyangke PS 2020-03-31 0 99999 7 -1 (Password set, SHA512 crypt.)
# 用户名 密码 设定时间(2020-03-31) 密码修改间隔时间(0) 密码有效期(99999) 警告时间(7) 密码不失效(-1),密码已使用
备:有了密码的账号,就可以使用远程登陆了
usermod
修改用户语法:usermod [选项] 用户名
编号 | 选项 | 说明 |
---|---|---|
1 | -c 用户说明 | 修改用户的说明信息,即修改 /etc/passwd 文件目标用户信息的第 5 个字段; |
2 | -d 主目录 | 修改用户的主目录,即修改 /etc/passwd 文件中目标用户信息的第 6 个字段,需要注意的是,主目录必须写绝对路径; |
3 | -e 日期 | 修改用户的失效曰期,格式为 "YYYY-MM-DD",即修改 /etc/shadow 文件目标用户密码信息的第 8 个字段; |
4 | -g 组名 | 修改用户的初始组,即修改 /etc/passwd 文件目标用户信息的第 4 个字段(GID); |
5 | -u UID | 修改用户的 UID,即修改 /etc/passwd 文件目标用户信息的第 3 个字段(UID); |
6 | -G 组名 | 修改用户的附加组,其实就是把用户加入其他用户组,即修改 /etc/group 文件; |
7 | -l 用户名 | 修改用户名称; |
8 | -L | 临时锁定用户(Lock); |
9 | -U | 解锁用户(Unlock),和 -L 对应; |
10 | -s | shell:修改用户的登录 Shell,默认是 /bin/bash。 |
# 修改ouyangke账号,会报错,zhulaoshi的位置应该是老用户名
usermod -l ouyangke zhulaoshi
# 修改ouyangke账号,正确
usermod -l zhulaoshi ouyangke
# 进入家目录查看
cd /home
ll
userdel
删除用户语法:userdel -r 用户名
编号 | 选项 | 说明 |
---|---|---|
1 | -r | 选项表示在删除用户的同时删除用户的家目录 |
# 删除php账号
userdel -r php
su
用户切换命令语法:su [选项] 用户名
编号 | 选项 | 说明 |
---|---|---|
1 | - | 当前用户不仅切换为指定用户的身份,同时所用的工作环境也切换为此用户的环境(包括 PATH 变量、MAIL 变量等),使用 - 选项可省略用户名,默认会切换为 root 用户。 |
2 | -l | 同 - 的使用类似,也就是在切换用户身份的同时,完整切换工作环境,但后面需要添加欲切换的使用者账号 |
3 | -p | 表示切换为指定用户的身份,但不改变当前的工作环境(不使用切换用户的配置文件) |
4 | -m | 和 -p 一样 |
5 | -c 命令 | 仅切换用户执行一次命令,执行后自动切换回来,该选项后通常会带有要执行的命令。 |
# 切换成zhulaoshi用户
su zhulaoshi
# 切换成root用户
su root
# 切换成zhulaoshi用户,环境改变
su - zhulaoshi
# 切换成root用户,环境改变
su - root
groupadd
添加用户组语法:groupadd [选项] 组名
编号 | 选项 | 说明 |
---|---|---|
1 | -g GID | 指定组 ID |
2 | -r | 创建系统群组 |
# 添加用户组
groupadd phpcn
groupmod
修改用户组语法:groupmod [选项] 组名
编号 | 选项 | 说明 |
---|---|---|
1 | -g GID | 修改组 ID |
2 | -n 新组名 | 修改组名 |
# 修改用户组
groupmod -n wwwphpcn phpcn
groupdel
删除用户组语法:groupdel 组名
# 删除用户组
groupdel wwwphpcn
# 删除用户组,失败
groupdel php
备:不能使用 groupdel 命令随意删除群组 备:组如果是某用户的初始组,则无法使用删除
关系