linux用户和用户组
Linux作为一种多用户多任务操作系统,在日常的使用中不可避免地要划分出一个角色的概念来管理和使用计算机,这个角色与每一个计算机使用者关联,
在Linux中称这种角色为用户。而在每一个用户使用计算机的过程中,又必然存在对有限计算机资源使用的限制性,那么操作系统就必须提供一种途径来保
证每个用户独立、合理的使用计算机。
用户
UID 0标识root用户
普通用户通常从UID 500开始
用户名和UID信息通常存储在/etc/passwd文件中
组
用户指派给组
用户组名称和GID保存在/etc/group中
同一个组中的所有用户能共享这个组的文件
linux用户与用户组的管理
用户和组基本操作命令
useradd --增加用户
userdel --删除用户
su --切换用户
groupadd --添加组
groupdel --删除组
我们首先创建一个用户useradd lyg
创建完成之后会在etc/passwd里面生成一条记录
/etc/passwd 的内容理解:
在/etc/passwd 中,每一行都表示的是一个用户的信息;一行有7个段位;每个段位用:号分割,
比如下面是我的系统中的/etc/passwd 的最后几行;
abrt:x:173:173::/etc/abrt:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
chrony:x:996:994::/var/lib/chrony:/sbin/nologin
tcpdump:x:72:72::/:/sbin/nologin
mysql:x:27:27:MySQL Server:/var/lib/mysql:/bin/false
redis:x:995:993:Redis Database Server:/var/lib/redis:/sbin/nologin
nginx:x:994:992:Nginx web server:/var/lib/nginx:/sbin/nologin
lyg:x:1000:1000::/home/lyg:/bin/bash
第一字段:用户名(也被称为登录名);
第二字段:口令;在例子中我们看到的是一个x,其实密码已被映射到/etc/shadow 文件中;
第三字段:UID ;请参看本文的UID的解说;
第四字段:GID;请参看本文的GID的解说;
第五字段:用户名全称,这是可选的,可以不设置;
第六字段:用户的家目录所在位置;;
第七字段:用户所用SHELL 的类型;所以设置为/bin/bash;
linux权限管理
第一种:通过权限字符来修改:用于权限需要严格控制的
(1)用户表示:所有者(u),组用户(g)其他用户(o),所有用户(a)
(2)权限表示:读(r),写(w),执行(x)
(3)操作实例:
所有者去除读权限:chmod u -r 目录
同组者增加写权限: chmod g+w 目录
所有人都可执行: chmod u+x,g+x,o+x 目录
chomd a+x 目录
第二种:通过数字来修改,一般用于权限不是太严格
(1)用户表示:三位二进制
(2)权限表示:读(4),写(2),执行(1)
(3)操作实例:所有者:可读可写可执行 1,1,1=7
同组者:可读可写 1,1,0=6
其他人:可读 1,0,0=4
chmod 764 sbin
这里要注意几个点
1.只有root用户能改变一个文件的所有者
2.只有root用户或者所有者能改变文件的组
3.通过chgrp命令改变组所有权
chgrp [-R] group_name file|directory
4.通过chown命令改变用户所有权
chown [-R] user_name:group_name file|directory
【参考】
- groupadd 组名,在linux中添加组
- vi /etc/group,查看linux中所有组信息,可以看可以编辑
- cat /etc/group,查看linux中所有组信息,只可以看不可以编辑
- useradd ‐g 组名 用户名,创建用户的同时指定将该用户分配到哪个组下
- vi /etc/passwd,查看linux中所有用户信息,可以看可以编辑
- cat /etc/passwd,查看linux中所有用户信息,只可以看不可以编辑