useradd -g 和-G的区别&用户信息存放的文件信息详解程序员

useradd -g 和-G的解释:


-g: initial_group

           group名称或以数字来做为使用者登入起始群组 (group)。群组名须为现有存在的名称.。群组数字也须为现有存在的群 组 。预 设 的 群 组 数 字 为 1 。

-G:group,[…]
              定 义此使用者为此一堆 groups的成员。每个群组使用 “,” 区格开来,不可以夹杂空白字元 。群组名同 -g 选项的限制 。定义值为使用者的起始群组 。

——分割线(通过问题来理解)——
 
现在root新建一用户testuser ,同时属于mysq、ftp组,起始目录有/home/testuser
useradd -g mysql -G ftp -d /home/testuser testuser

请问:
1. 对于testuser,请问-g 、-G有何区别?

2. testuser 用户建立后。cat /etc/group | grep testuser只发现ftp组中有testuser(-g ftp -G mysql,也只能在mysql中看到testuser,也就是说-g的组里面我看不见testuser用户)。通过id testuser可看见其所属组:uid=504(testuser) gid=101(mysql) groups=101(mysql),50(ftp)
— 请问,为什么-g 组中看不到testuser ?

3.因为我在cat /etc/group 看不到testuser,请问如果要在mysql组中,如何删除testuser?

对于第1个问题,
-g 用户所属组,-G 用户附加组
一个用户只能且必须属于一个g,可以属于多个G。 用户testuser 同时用户所属g和G的权限

对于第2个问题,实现机制应该是:
-g 设置的是用户的primary group。 这些信息记录在/etc/passwd中。事实上系统确认一个用户的primary group的时候是根据/etc/passwd,而跟/etc/group无关。 因此,”useradd -g”仅仅修改/etc/passwd,而不会修改/etc/group。同理,”usermod -g”一样。

这样其中一个好处在于,当”usermod -g”切换到一个临时组,然后再切换回来的时候,不会把临时组的信息“遗留”在该用户设置中(即该用户已不在临时组中---如果原来附属组中没有那个临时组的话)。

对于第3个问题,假设用户信息如下:
uid=504(testuser) gid=101(mysql) groups=101(mysql),50(ftp)

如果用户是以LZ的方法建立,以下命令可以将testuser从mysql组中删除。
usermod -g ftp testuser

如果当testuser 的primary group(中文名怎样称呼好点?基本组?主组?)不是mysql时仍需要testuser属于mysql组中,在创建用户时或许用以下方法更合适:

useradd -g mysql -G mysql,ftp testuser

加”-G”参数会把修改记录在/etc/group。所以即使切换为另外一个primary group,mysql仍在附属组中。

参考链接:http://bbs.chinaunix.net/thread-1945469-1-1.html

—————————————————分割线—————————————————-

/etc/passwd 存放账户信息:

root:x:0:0:root:/root:/bin/bash

jianing:x:1011:100::/home/jianing:/bin/bash

username:password:uid:gid:allname:homedir:shell

用户名:密码:用户ID:组ID:用户全名:主目录:登录shell

密码:存在/etc/shadow中,存入后者的就用x表示,如果是“!”说明此用户不能用密码登录

UID:就是用户识别码(ID),当UID为0时说明其账号是管理员身份,1-499是保留给系统使用的主要是一些系统服务,500-65535是给一般用户的。

GID:与/etc/group文件有关,就是用户初始化组的ID。

用户全名:用户全名

家目录:就是该用户的主目录

Shell:SHELL脚本

 

/etc/shadow  存放用户密码

root:$2a$32$3lnW8AXwIZy.Ibh0T2k3huMil/ZGEOQwe3EvJJzfnIcnPzxTamjke:14916::::::

jianing:$2a$10$AmxqDaxMITQoEr4HGcM/zO6JzJWMVcHpxmXdWKVOX5Tb/WWQ/m8wK:14853:0:99999:7:::

aj:!:15006:0:99999:7:::

username:password:last_change:min_change:max_change:warm:failed_expire:expiration:reserved

账号名称:密码:最近更改密码的日期(from 1974-1-1):密码不可更改的天数:密码需要重新更改的天数:密码更改期限前的警告日期:密码过期的宽限时间:账号失效时间:保留

 

 

/etc/group 用户组信息

root:x:0:

test:!:1005:u01,u02,u03,cvsroot

groupname:password:gid:members

 

组名:密码:组ID:成员

原创文章,作者:奋斗,如若转载,请注明出处:https://blog.ytso.com/1835.html

(0)
上一篇 2021年7月15日
下一篇 2021年7月15日

相关推荐

发表回复

登录后才能评论