Linux中的用户管理
一、用户及用户组存在的意义
用户存在的最大意义在于能够使系统资源得到合理的分配,因为系统资源是有限的,如果没有用户这个概念,将会导致系统在分配资源时产生混乱。而用户组是一个逻辑容器,方便对用户进行归类和统一授权。而在系统分配资源时需要有多个资源配合,包括:
身份 | account |
---|---|
授权 | author |
认证 | auth |
这就是所说的3A机制,它组成了系统中最底层的安全架构
二、用户及用户组在系统中的存在方式
1)用户就是/etc/passwd 文件中的一行字符:“kiosk: x :1000:1000::/home/kiosk:/bin/bash”
2)用户组存在的方式就是/etc/group 文件中的一行字符:“kiosk: x: 1000:”
三、用户查看及用户切换
1.用户查看
[westos@linux Desktop]$ whoami #查看当前用户
[westos@linux Desktop]$ id #查看用户 id 信息
[westos@linux Desktop]$ id -u #查看用户的用户 id
[westos@linux Desktop]$ id -g #查看用户主组 id
[westos@linux Desktop]$ id -G #查看用户所有的组的 id
[westos@linux Desktop]$ id -n #显示名称
操作如下所示:
2.用户切换
[westos@linux Desktop]$ su - root #切换到超级用户
[root@westos_student3 ~]# su - kiosk #切换到普通用户
注意:1)如果 root ----> commonuser 不需要后者密码,commonuser ----> root 需要密码,commonuser ----> commonuser需要密码。
2)在一个 shell 中反复执行 su 命令会导致环境错乱,不要在一个 shell 中反复执行 su 命令,在做用户切换时,应先exit退出该用户,再执行su命令进行切换。
四、用户涉及到的系统配置文件
位置 | 作用 |
---|---|
/etc/passwd | 用户身份信息文件 |
/etc/group | 组信息文件 |
/etc/shadow | 用户认证信息文件 |
/home/username | 用户家目录 |
/etc/skel/.* | 用户环境配置文件模板 |
1)/etc/passwd 文件如下
包括用户名称:用户密码:用户 id:用户主组 id:用户说明:用户家目录:用户默认的shell
2)/etc/group文件如下
包括组名称:组密码:组 id:附加组名称
3)/etc/shadow文件如下
包括用户名称:用户加密字符:密码使用天数:密码最短有效期:密码最长有效期:密码过期警告:认证非活跃天数:账号认证到期时间:未启用功能
4)/etc/skel/.* 文件如下
总结
此文介绍了Linux中用户及用户组原理、涉及到的文档,在后一片博客中,将继续学习用户管理具体使用到的命令和操作。