用户和用户组

用户和用户组

1.1 用户分类

1.1.1 按位置分类
  • 本地账号
  • 远程(域)账号
1.1.2 按功能分类
  • 超级用户:即root用户,root用户是超级用户,权利无限,需要做好保密工作。root用的UID为0。
  • 普通用户
    • 系统用户:这类用户是为了满足系统自己的运行而内建的一些账号。在RHEL7中,它们的UID范围为:1-999;RHEL6中UID范围为:1-499
    • 由管理员创建的普通用户,权限受到一定限制,只有在自己的宿主目录权限是完整的。RHEL7中UID范围:1000+;RHEL6中UID范围:500+。
    • 伪用户:与系统和程序有关,通常不需要或者不能登录系统,也没有宿主目录。它们是为了应用程序的运行而附加的用户,比如:nginx、apache。

root用户和普通用户登录系统后界面的区别:
root用户:

Last login: Tue Oct 24 16:47:39 2017 from 192.168.1.68
[root@caimeidev2 ~]# 

普通用户:

Last login: Tue Oct 24 16:47:39 2017 from 192.168.1.68
[cmuser@caimeidev2 ~]$

注意"#""$"

1.2 用户文件位置和结构

  • 用户信息文件:该信息保存在/etc/passwd文件
    这里写图片描述
    这里写图片描述

  • 用户密码文件:该信息保存在/etc/shadow文件,包含用户对应的密码信息
    这里写图片描述
    /etc/shadow文件中每个字段所包含的意思:
    这里写图片描述

1.3 用户相关命令

1.3.1 useradd命令

作用:
添加用户

常用选项:
-u UID
-d 宿主目录
-g 起始组(只能有一个)
-G 附加组(可以有多个)
-s 登陆shell
-M 不要自动建立用户的登入目录

参数:
用户名

示例:
1. 添加一个叫zhangsan的用户,useradd zhangsan
这里写图片描述
2. 创建用户lisi并指定其UID为1100,useradd -u 1100 lisi
这里写图片描述
3. 创建用户wangwu并指定其宿主目录为/opt/wangwu,useradd -d /opt/wangwu wangwu
这里写图片描述
4. 创建用户zhaoliu,但是强制其不创建宿主目录,useradd -M zhaoliu
这里写图片描述
5. 创建用户chenqi,并指定其所属组和附加组,useradd -g 1100 -G 1100,1004 chenqi
这里写图片描述
6. 创建一个不需要登录的用户caoba,useradd -s /sbin/nologin caoba
这里写图片描述

1.3.2 usermod命令

作用:
修改用户信息

说明:
usermod命令的使用方式和useradd命令一直,这里不再赘述。

1.3.3 userdel命令

作用:
删除用户

常用选项:
-r 连同用户的宿主目录一起删除

参数:
用户名

示例:
1. 删除用户caoba,连同其家目录一起删除,userdel -r caoba
这里写图片描述

1.3.4 passwd命令

作用:
修改用户密码

常用选项:
–stdin 非交互式修改用户密码:

格式:
passwd 用户名
echo “密码” | passwd –stdin 用户名

示例:
1. 修改用户zhangsan的密码,passwd zhangsan
这里写图片描述
2. 通过非交互式方式修改用户zhangsan的密码,echo “123456” | passwd –stdin zhangsan
这里写图片描述

1.3.5 chpasswd

作用:
修改用户密码

示例:

[root@caimeidev2 ~]# echo username:password | chpasswd

2 用户组管理

2.1 用户组分类

2.1.1 按位置分类
  • 本地组
  • 远程(域)组
2.1.2 按功能分类
  • 超级用户组,GID为0
  • 普通用户组
    • 系统用户组,RHEL7中GID范围1-999,RHEL6中1-499
    • 本地用户组,RHEL7中GID范围1000+,RHEL6中500+

2.2 用户组文件位置和结构

  • 用户组信息文件,/etc/group
    这里写图片描述
    这里写图片描述
  • 用户组密码文件,/etc/gshadow,这个文件一般不怎么使用,这里不做详细介绍。

2.3 用户组相关命令

2.3.1 groupadd命令

作用:
新建一个用户组

常用选项:
-g 指定组ID

参数:
用户组名

示例:
1. 创建一个组名叫alex的用户组,groudadd alex
这里写图片描述
2. 创建一个组名叫jack的用户组,并且指定组ID为1200,groupadd -g 1200 jack
这里写图片描述

2.3.2 groupmod命令

作用:
修改用户组信息

说明:
groupmod命令和groupadd命令用法一直,这里不再赘述。
2.3.3 groupdel命令

作用:
删除用户组

常用选项:

参数:
用户组名

示例:
1. 删除用户组jack,groupdel jack
这里写图片描述

3 查看用户信息

3.1 id命令

作用:
查看用户简单信息

常用选项:

参数:
id 用户名

示例:
1. 查看root用户的信息,id root
这里写图片描述

3.2 w命令

作用:
显示已登录系统的用户列表,并显示用户正在执行的命令和程序

常用选项:

参数:

示例:
这里写图片描述

3.3 who

作用:
显示目前登录系统的用户信息

常用选项:

参数:

示例:
这里写图片描述

3.4 whoami命令

作用:
显示目前登录系统的用户信息

常用选项:

参数:

示例:
这里写图片描述
注意:合起来写和分开写有一定的区别。

w、who、whoami三个命令比较有趣的是命令越长信息越少。

[root@caimeidev2 ~]# w
 12:04:02 up  3:33,  1 user,  load average: 0.00, 0.04, 0.01
USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT
root     pts/0    192.168.1.68     11:09    0.00s  0.01s  0.00s w
[root@caimeidev2 ~]# who
root     pts/0        2017-10-26 11:09 (192.168.1.68)
[root@caimeidev2 ~]# whoami
root

3.5 finger命令

作用:
显示目前登录系统的用户信息

常用选项:

参数:

示例:
这里写图片描述

4 用户切换

4.1 su命令

作用:
可以用来从一个用户切换到另外一个用户。需要注意的是root用户切换到普通用户时,不需要密码,而普通用户切换到root用户或普通用户时,需要密码。

常用选项:
- 使 shell环境 成为切换用户的 shell

参数:
用户名

示例:
1. 比较su和su -的区别
这里写图片描述
上图中第一次用su切换用户zhangsan和后面一次用su - 切换的界面展现形式是不一样的,第一次虽然切换用户,但是shell环境还是root的,而第二次则用户和shell环境都切换成zhangsan的了。
总结:
su命令和su - 命令最大的本质区别就是:前者只是切换了身份,但Shell环境仍然是原来用户的Shell;而后者用户和Shell环境一起切换成新用户的了。只有切换了Shell环境才不会出现PATH环境变量错误。

5 实战

  • 用户宿主目录不小心被删除了,怎么办?
    宿主目录里面有什么?宿主目录里面比较重要的是“.bash”开头的几个文件,其他的为缓存文件
    这里写图片描述
    我们需要这样恢复,先在home下新建一个和用户名对应的目录,然后在把用户模板文件拷贝过来,用户模板文件存放在/etc/skel
    这里写图片描述
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值