
对于所有的文件来说,肯定有一个所有者(Owner),所有者(owner)默认是这个文件的创建者。当然可以通过chown这个命令把这个文件的所有者改为其他没有创建这个文件的用户。另外这个文件在创建的时候,创建者是以某个组成员的身份创建(创建者可能同时身在多个组)的,于是这个文件还具有组别。你用“ls -lh”就可以看结果中包含这样的两列“abc users”或者“root root”,其中前面的abc和root就是这个文件的所有者,users、root就是创建这个文件的人以哪个组组员的身份创建这个文件(或者说这个文件是属于哪个组的同样也能用chmod命令修改文件所在的组)。
于是这个文件的权限就是描述这个文件的所有者对它具有的权限(owner权限)、这个文件所在的组的其他用户对这个文件具有的权限(group权限)、既不是这个文件的所有者又不和这个文件所在的组(文件创建时创建者以哪个组的身份来创建)的其他用户具有的权限(others权限)。
你是想不创建和user同名的用户组吧?用useradd
-g
(groupid)或者
-g
(groupname) ,把用户加入某一个已经存在的组。linux里任何一个用户都必须有一个数组,不可能有用户不属于任何组。
groupadd test创建test用户组useradd user1创建user1用户
passwd user1 设置user1的密码
useradd user2创建user2用户
passwd user2设置user2的密码
gpasswd -a user1 test 把user1用户添加到test用户组
gpasswd -a user2 test 同上
具有某种共同特征的用户集合起来就是用户组(Group)。用户组(Group)配置文件主要有 /etc/group和/etc/gshadow,其中/etc/gshadow是/etc/group的加密信息文件;在本标题下,您还能了解到什么是GID ;
1、/etc/group 解说;
/etc/group 文件是用户组的配置文件,内容包括用户和用户组,并且能显示出用户是归属哪个用户组或哪几个用户组,因为一个用户可以归属一个或多个不同的用户组;同一用 户组的用户之间具有相似的特征。比如我们把某一用户加入到root用户组,那么这个用户就可以浏览root用户家目录的文件,如果root用户把某个文件 的读写执行权限开放,root用户组的所有用户都可以修改此文件,如果是可执行的文件(比如脚本),root用户组的用户也是可以执行的;
用户组的特性在系统管理中为系统管理员提供了极大的方便,但安全性也是值得关注的,如某个用户下有对系统管理有最重要的内容,最好让用户拥有独立的用户组,或者是把用户下的文件的权限设置为完全私有;另外root用户组一般不要轻易把普通用户加入进去,
2、/etc/group 内容具体分析
/etc/group 的内容包括用户组(Group)、用户组口令、GID及该用户组所包含的用户(User),每个用户组一条记录;格式如下:
group_name:passwd:GID:user_list
在/etc/group 中的每条记录分四个字段:
第一字段:用户组名称;
第二字段:用户组密码;
第三字段:GID
第四字段:用户列表,每个用户之间用,号分割;本字段可以为空;如果字段为空表示用户组为GID的用户名;
我们举个例子:
root:x:0:root,linuxsir 注:用户组root,x是密码段,表示没有设置密码,GID是0,root用户组下包括root、linuxsir以及GID为0的其它用户(可以通过 /etc/passwd查看);;beinan:x:500:linuxsir 注:用户组beinan,x是密码段,表示没有设置密码,GID是500,beinan用户组下包括linuxsir用户及GID为500的用户(可以通 过/etc/passwd查看);linuxsir:x:502:linuxsir 注:用户组linuxsir,x是密码段,表示没有设置密码,GID是502,linuxsir用户组下包用户linuxsir及GID为502的用户 (可以通过/etc/passwd查看);helloer:x:503: 注:用户组helloer,x是密码段,表示没有设置密码,GID是503,helloer用户组下包括GID为503的用户,可以通过 /etc/passwd查看;
而/etc/passwd 对应的相关的记录为:
root:x:0:0:root:/root:/bin/bashbeinan:x:500:500:beinan sun:/home/beinan:/bin/bashlinuxsir:x:505:502:linuxsir open,linuxsir office,13898667715:/home/linuxsir:/bin/bashhelloer:x:502:503::/home/helloer:/bin/bash
由此可以看出helloer用户组包括 helloer用户;所以我们查看一个用户组所拥有的用户,可以通过对比/etc/passwd和/etc/group来得到;
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)