用户与用户组

概述:
su 可以切换到用户 user,执行时需要输入目标用户的密码

sudo 可以以特权级别运行 cmd 命令,需要当前用户属于 sudo 组,且需要输入当前用户的密码(在/etc/sudoers 中查看)

su - 命令也是切换用户,同时环境变量也会跟着改变成目标用户的环境变量

常用命令:
用户基本信息- /etc/passwd
记录用户的基本信息,每行代表一个用户

每一行包含 7 个字段,用“:”分隔

用户密码信息- /etc/shadow

记录用户密码相关信息,每行代表一个用户

每一行包含 9 个字段,用“:”分隔

只有 root 用户可以查看

 

用户组配置文件- /etc/group

记录用户组信息,每行代表一个用户组

每一行包含 4 个字段,用“:”分隔

  新增用户-useradd

-d  homedir:指定用户的主目录,必须是绝对路径

-u  uid:指定用户的 UID

-g  gid | gname:指定用户主组的 GID 或组名,必须是已经存在的组

-G  groups:指定用户的附加组,如果有多个附加组就用“,”分隔

-m:强制建立用户的主目录,这是普通用户的默认值

-M:不要建立用户的主目录,这是系统用户的默认值

-s  shell:指定用户的默认 Shell

-c  comment:关于用户的简短描述,也就是 /etc/passwd 第 5 列的内容

-r:创建一个系统用户(UID 在 1000 以内)

-e  expiredate:指定账号失效日期,即 /etc/shadow 的第 8 列,格式为YYYY-MM-DD

-f  inactive:用户密码到期后的宽限天数,即 /etc/shadow 的第 7 列。0 表示立即失效,-1 为永远不失效
 

[root@localhost ~]# useradd ji           //新增用户ji
[root@localhost ~]# grep ji /etc/passwd    //在 /etc/passwd 文件中新增一行与新用户相关的数据
niu:x:1001:1001::/home/ji:/bin/bash
[root@localhost ~]# grep ji /etc/shadow    //在 /etc/shadow 文件中写入一行与新用户相关的密码数据
niu:!!:19112:0:99999:7:::
[root@localhost ~]# grep ji /etc/group     //在 /etc/group 文件中新增一行与新用户同名的用户组
niu:x:1001:
[root@localhost ~]# ls -ld /home/ji        //在 /home 目录下创建与新用户同名的目录作为新用户的主目录
drwx------. 3 ji ji 78 4月  30 10:14 /home/ji

设置用户密码-passwd

-l:锁定用户,即“lock”。在 /etc/shadow 的第一列前加“!”使密码无效,只有 root 用户可以使用这个选项

-u:解锁用户,即“unlock”,作用与-l选项相反,只有 root 用户能够使用

-S:查询用户密码的相关信息,也就是 /etc/shadow 文件的内容

-n  mindays:密码修改后多长时间内不能再修改密码,即 /etc/shadow 第 4 列的内容

-x  maxdays:密码有效期,即 /etc/shadow 第 5 列的内容

-w  warndays:密码过期前的警告天数,即 /etc/shadow 第 6 列的内容

-i  inactivedays:密码失效日期,即 /etc/shadow 第 7 列的内容

-c  comment:关于用户的简短描述,也就是 /etc/passwd 第 5 列的内容

[root@localhost ~]# passwd ji   // 以root用户身份修改zys用户的密码
更改用户 ji的密码 。
新的 密码:
重新输入新的 密码:
passwd:所有的身份验证令牌已经成功更新。
 
 
用户修改自己的密码:
注意:普通用户修改密码有三点不同
第一,普通用户只能修改自己的密码
第二,普通用户修改密码前必须输入原密码
第三,普通用户设置的密码必须满足密码复杂性要求
 
[ji@localhost ~]$ passwd    // 为自己修改密码
更改用户 ji的密码 。
为 ji 更改 STRESS 密码。
(当前)UNIX 密码:           //在这里输入原密码
新的 密码:                   //在这里输入新密码
无效的密码: 密码少于 8 个字符 //新密码不满足复杂性要求
新的 密码:                   //重新输入新密码
重新输入新的 密码:           //再次输入新密码
passwd:所有的身份验证令牌已经成功更新。

 
 

修改用户信息-usermod

用法和 useradd 非常类似!

 删除用户-userdel

[root@localhost ~]# userdel -r ji    删除用户shaw,并删除用户主目录
[root@localhost ~]# grep ji /etc/passwd
[root@localhost ~]# grep ji /etc/shadow
[root@localhost ~]# grep ji /etc/group
[root@localhost ~]# ls -d /home/ ji 
ls: 无法访问/home/ ji: 没有那个文件或目录      //用户主目录一同被删除

创建用户组 - groupadd 命令

使用 -g 选项手动指定用户组ID

[root@localhost ~]# groupadd jiji   // 新增用户组
[root@localhost ~]# grep jiji /etc/group    //在/etc/group文件中添加用户组信息
jiji:x:1001:

修改用户组信息 - groupmod 命令

功能:修改用户组信息(不建议更改)

使用 -g 选项修改GID

使用 -n 选项修改组名

[root@localhost ~]# grep jiji /etc/group
jiji:x:1001:                                 // 原GID为1001
[root@localhost ~]# groupmod -g 1100 jiji   // 修改GID
[root@localhost ~]# grep jiji /etc/group
jiji:x:1100:                                 // GID已修改为1100
[root@localhost ~]# groupmod -n jih  jiji   //修改组名
[root@localhost ~]# grep jih /etc/group
jih:x:1100:                                   //组名已修改为jih

删除用户组 - groupdel 命令

不能删除用户的主组!

[root@localhost ~]# grep jih /etc/group     //查找用户组jih
jih:x:1100:
[root@localhost ~]# groupdel jih            //删除用户组jihr
[root@localhost ~]# grep jihr /etc/group     //删除成功
[root@localhost ~]# groupdel an              //删除主组
groupdel:不能移除用户“an”的主组              

id 和 groups 命令

id 命令功能:查看用户的 UID、GID 和附加组信息

groups 命令功能:显示用户的组信息,与 id  -Gn 命令效果相同

[root@localhost ~]# id an    //查看an用户的相关信息
uid=1000(an) gid=1000(an) 组=1000(an)
[root@localhost ~]# groupadd ji
[root@localhost ~]# usermod -G ji an // 将an用户添加到ji组中
[root@localhost ~]# id an
uid=1000(an) gid=1000(an) 组=1000(an),1001(ji)
 
[root@localhost ~]# groups an   //查看用户组信息
an : an ji

groupmems 命令

功能:把用户添加到或移出用户组

选项

功能说明

-a  username

把用户添加到组中

-d  username

从组中移除用户

-g  grpname

目标用户组

-l

显示组成员

-p

删除组内所有用户

 [root@localhost ~]# groupmems -lg ji  // 查看用户组内有哪些用户
an 
[root@localhost ~]# groupmems -d an -g ji // 从ji组中移除用户an
[root@localhost ~]# groupmems -lg ji   //用户组ji为空
[root@localhost ~]# 

newgrp 命令

功能:修改用户的有效组,作为创建文件的属组

[root@localhost ~]# groupmems -a an -g ji  // 向ji组中添加用户an
[root@localhost ~]# groupmems -lg ji
an 
[root@localhost ~]# su an
[an@localhost root]$ cd ~
[an@localhost ~]$ cd 20220430
[an@localhost 20220430]$ groups an   // 当前登录用户是an
an : an ji                          // 主组是an,同时属于附加组ji
[an@localhost 20220430]$ touch a
[an@localhost 20220430]$ newgrp ji  // 设置devteam为有效用户组
[an@localhost 20220430]$ touch b
[an@localhost 20220430]$ ls -l
总用量 0
-rw-rw-r--. 1 an an  0 4月  30 11:23 a  // a的属组是an
-rw-r--r--. 1 an ji 0 4月  30 11:24 b  // b的属组是ji

总结:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值