1.为什么要进行用户管理?
因为linux系统是一个多用户多任务的操作系统,管理好用户才能保证系统有条不紊的工作
2.linux系统用户存在的意义
用户是linux系统最底层的安全设备,属于权限问题,系统要回收权力
系统用户即系统的使用者,用户管理是对文件进行管理,用户的存在是为了回收权力
3.linux系统组存在的意义
用户组是用户的延伸,可以得到身份,共享用户的权力
相当于我是我自己,但我还属于我的家,我和家人就组成了初始用户组
在学校,我属于自己班级的一员,我和班里的同学组成了附加用户组
组的存在是为了共享权力,组和用户是两个不同的机制
组的分类:
初始组 | 用户刚建立时就加入的组 |
---|---|
附加组 | 用户后期加入的组 |
4.搭建实验环境
在真机的shell里面输入命令打开desktop虚拟机
5.怎样查看linux系统用户?
(1)查看当前正在使用的用户:
whoami 查看当前用户
(2)查看系统中用户的信息:
id | 查看正在使用的用户的所有id信息 |
---|---|
id -u | 查看用户的uid |
id -g | 查看用户的gid |
id -G | 查看用户所在的所有组的id |
id -n | 显示名字而不显示id数字 |
(3)切换用户:
gnome–session–quit–force ##注销当前用户,用其他用户登陆
su - 用户名称(前提是该用户在系统当中已经存在,若不存在需要现在超级用户模式下新建立用户)
su - 中 “-” 标示在用户身份切换时同时切换当前用户的环境
(否则环境不改变)
注意:
su - 中 “-” 标示在用户身份切换时同时切换当前用户的环境
su - 执行时高级用户切换到低级用户不需要密码,低级用户切换到高级需要,平级用户切换切换也需要
每次su切换到其他用户操作之后必须退出,然后再次切换到其他用户,否则会造成用户紊乱
6.用户在linux系统中的存储方式
其实用户也是文件,对用户的管理就是对文件的管理
用户其实就是以文件的方式存储的,和文件一样
默认shell的指定有哪些可以查看系统中/etc/shells文件
(1)用户信息文件: /etc/passwd
说明:用户信息文件里面存储了用户的一些基本信息
包括的内容:用户名称:用户密码:uid:gid:说明:家目录:默认shell
用户名称 | 用户自己的名字 |
---|---|
用户密码 | 用户自己的密码 |
uid | 用户自己的身份证号 |
gid | 用户所属组的身份证号 |
说明 | 默认shell的指定有哪些,可以查看系统中的/etc/shells |
家目录 | 该文件一开始在的目录 |
默认shell | 和系统的聊天软件类型 |
(2)用户组信息文件: /etc/group
说明:用户组信息文件里面存储了用户所属组(用户组)的一些基本信息
包括的内容:组的名字:组的密码:组的id:组的成员
组的名字 | 这个组的称谓 |
---|---|
组的密码 | 这个组的密码 |
组的id | 这个组的身份证号 |
组的成员 | 该组里面包括了哪些用户 |
(3)认证信息文件: /etc/shadows
说明:认证信息文件里面包括了一些认证信息,比如每个用户登陆时的密码
包括的内容:用户名称:密码(sha512非对称加密)
(4)默认开启shell的配置,用户的骨文件:/etc/skel/.*
说明:骨文件里面存储了默认用户和系统对话工具的相关信息
(5)用户的家目录: /home/username
注意:家目录指的是该用户建立的所属目录
用户其实就是文件的内容以及文件内容所指定的那些文件
uid相当于用户的身份证号 ,真正区别用户的不是名字,而是uid
用户说明和用户名字不一样
组用户为附加用户 ,并不是原有用户
初始组和附加组不一样
7.用户组的管理(用户组管理命令)
groupadd 用户组名字 | 建立用户组 |
---|---|
groupadd -g 6666 用户组名字 | 建立用户组并指定用户组的id |
groupdel 用户组名字 | 删除用户组 |
(1)动态监控每一个命令作用后的状态采用watch命令
首先打开一个shell,监控自己建立文件的过程
输入监控命令 watch 由里到外输入命令,不易出现错误
用户信息监控命令
watch -n 1 “tail -n 3 /etc/passwd /etc/group ; ls -l /home “
注意:ctrl+c可以退出,watch -n 1 表示每秒更新一次。
(2)用户组的建立:groupadd
groupadd 用户组名
(2)用户组的删除:groupdel
groupdel 用户组名