Linux系统中用户的扩展研究
进程 用户和文件
Linux中的用户及用户组
linux中只有两个等级:root和非root,
- 一个用户至少属于一个用户组
- 一个用户可以属于多个用户组
用户本身的区别主要是权限的区别
各个用户之间的区别还有:
- 是否拥有密码
- home目录不同
- 普通用户的home目录是/home/username/
- root用户的home目录是/root/
- 不同的shell(tty等)
所有用户都可以通过
cat /etc/passwd
来查看,passwd文件的格式为
<username>:<code>:<UID>:<GID>:<fullname>:<home_dir>:shell
UID
- UID 0 %t root用户
- UID 1~999 预留
- UID 1000 以上是正常登陆的用户
GID
一个用户可以属于多个用户组,其中存储在/etc/passwd里的是专职用户组,每个用户只有一个专职用户组,其余用户组关联存储在/etc/group文件中
隐密码文件
考虑到/etc/passwd所有人都可以查看,于是以x代替,密码统一存储到/etc/shadow文件(只有root可以访问),全部以密文存储,shadow文件的格式为
<loginname>:
<encrypted_code>:(* cannot login)
<last Time code change>:
<effective days>:
<day-left notify>:
<day-left effect>:
<date invalid date>:
<reserved bit>
组文件
组文件的存储格式为
<g_name>:<g_code>:<GID>:<in-group name>
正常情况下很少用到组密码,存储在/etc/shadow中
用户组文件中比较特殊的是组内用户名,其实是本组用户的列表,用,分割,如果字段为空则表示用户组为GID的用户名
普通用户使用sudo临时使用superuser的权限,使用sudo需要输入root密码,赋予用户权限需要修改
/etc/sudoers
文件
为没有root权限的用户添加root执行权
原文地址:https://www.cnblogs.com/liutianchen/p/8504527.html