网站首页 > 文章中心 > 其它

linux添加群组命令

作者:小编 更新时间:2023-08-10 13:32:42 浏览量:342人看过

Linux命令之用户组管理

Linux中每个用户都要属于一个或多个组,有了用户组,就可以将用户添加到组中,这样就方便管理员对用户的集中管理. Linux系统中用户组分为root组、系统组、普通用户组三类.当一个用户属于多个组时,这些组中只能有一个作为该用户的主属组,其他组就被称为此用户的次属组. 组基本信息在文件/etc/group中;组密码信息在文件/etc/gshadow中.通过命令:cat /etc/group、cat /etc/gshadow可查看文件内容.

组名:密码:GID:该用户组中的用户列表

组名:加密密码:组管理员:组附加用户列表

root用户可以直接修改/etc/group文件达到管理组的目的,也可以使用以下命令:groupadd、groupdel、groupmod -n、gpasswd -a、gpasswd -d、newgrp.

下面使用案例分别讲解这些命令:

添加用户组的命令是 groupadd,命令格式如下:

groupadd? [ -g gid? [ -o ] ]? [ -r ]? [ -f ]? group

参数说明:

-g:指定新建工作组的 id;

-K:覆盖配置文件 "/ect/login.defs";

-o:允许添加组 ID 号不唯一的工作组.

-f,--force: 如果指定的组已经存在,此选项将失明了仅以成功状态退出.当与 -g 一起使用,并且指定的GID_MIN已经存在时,选择另一个唯一的GID(即-g关闭).

示例:创建一个新的组,并添加组 ID.

删除用户组时,可用groupdel(group delete)指令来完成.倘若该组中仍包括某些用户,则必须先删除这些用户后,方能删除组. 注意:删除的组不能为主属组! 命令格式:

groupdel? [组名]? ? ? ? ?

示例:删除用户组 newgroup

此时再查看/etc/group文件时可以看到用户组newgroup已经不存在,删除成功!

要更改用户组识别码或名称可使用 groupmod 来完成.命令格式:

groupmod? [ -g? 群组识别码? -o ] [ -n? 新群组名称 ] [原群组名称]

参数说明 :

-g 群组识别码  设置欲使用的群组识别码.

-o  重复使用群组识别码.

-n 新群组名称  设置欲使用的群组名称.

示例:创建用户组newgroup并修改其名称为modifiedgroup

查看/etc/group文件,只存在名称为modifiedgroup的用户组,修改成功!

gpasswd 是 Linux 下工作组文件 /etc/group 和 /etc/gshadow 管理工具,用于将一个用户添加到组或者从组中删除.命令格式:

gpasswd? [可选项]? 组名

可选项参数 :

-a:添加用户到组;

-d:从组删除用户;

-A:指定管理员;

-M:指定组成员和-A的用途差不多;

-r:删除密码;

-R:限制用户登入组,只有组中的成员才可以用newgrp加入该组.

示例1:将用户yangwei添加到组modifiedgroup中

此时查看/etc/group文件发现组?modifiedgroup中出现用户yangwei

再次查看/etc/group文件发现用户yangwei已经不存在.

当需要在不同的群组下工作的时候我们需要进行切换群组操作,这个操作由newgrp指令来完成.命令格式如下:

newgrp [群组名称]

注意!当前用户必须都是两个群组的成员,否则切换群组时需要输入切换组的组密码,这时候当前用户作为临时成员在切换组下工作,所创建的文件全都属于切换组.

示例1:用户yangwei不属于群组modifiedgroup,请将当前工作组切换为modifiedgroup.

总结:Linux用户组管理需要掌握最基本的几个命令及其选项参数: groupadd 、groupdel 、groupmod 、gpasswd 、newgrp !

linux中如何用指令将用户加入到群组中?

① 假设有个组是g1,你想创建一个用户zs,创建之后这个用户zs就属于g1,可以使用以下命令:

useradd -G g1 zs 或者

useradd -g g1 zs

没错,一个是大写G,一个是小写g,不同的是,使用大写,那么意思是新建的用户zs同时属于自己的zs组,也属于g1组,而小写g的意思就是zs只属于g1组.

usermod -g g1 zs 或者

usermod -G g1 zs

大小写的意思同上.

Linux添加/删除用户和用户组

方法步骤:

①.、创建用户

adduser phpq //新建phpq用户

passwd phpq //给phpq用户设置密码

groupadd tes //新建test工作组

useradd -g test phpq //新增phpq用户并增加到test工作组

注:-g所属组 -d家目录 -s所用的shell

usermod -G groupname username或者gpasswd -a user group

在/etc/shadow文件中属于该用户的行的第二个字段(密码)前面加上*就可以了,想恢复该用户,去掉*即可,或者使用如下命令关闭用户账号:passwd

peter -I

重新释放:passwd peter -u

userdel peter、groupdel peter、usermod -G peter

peter(强制删除该用户的主目录和主目录下的所有文件和子目录)

id user、cat /etc/passwd

Linux常用命令之--useradd,userdel,usermod,groupadd,groupdel,groupmod,gpasswd

会创建用户,并同时创建和用户同名的组;邮件文件;家目录(默认存放在/HOME/里的同名文件夹里)

语 法:useradd [选项] 用户名

常用选项 :

-c 备注 加上备注文字

-d 目录 指定用户登入时的启始目录

useradd -d /tmp/jack jack

cat /etc/passwd jack 已经为/tmp/jack了,说明创建成功了.但是cd到/tmp/里看不到

jack的文件夹,是因为权限不够,如果关掉SeLinux或者赋予它权限了就可以看到jack文件夹了

-g 群组   指定用户所属的群组

-G 群组   指定用户所属的附加群组

-m /-M  自动建立(-m)用户的登入目录或不自动创建

-n   取消建立以用户名称为名的群组

-s shell    指定用户登入后所使用的shell (不加-s的默认shell为/bin/bash)

/sbin/nologin 没有可登录的shell

-u uid  指定用户ID

useradd -n -G natasha tom

建新用户在不指定的情况下UID和GID是一样的,但是因为这里用-n取消建立以用户

useradd -g natasha tom

用-g指定tom的主群组为natasha,所以呢在cat /etc/group里没有tom群组,在cat

语 法:userdel [选项] 用户名

常用选项

-r 删除用户登入目录以及目录中所有文件 (不加-r不会自动删除同名组,邮件文件和家目录,如果先通过userdel删除了用户,之后想删除其同名组,邮件文件和家目录需要用rm命令手动一个个删除),但是如果只删除了用户,没删除的里面的各种文件使用的还是原来创建这个用户时的UID,所以一旦其他用户使用了这个UID,还是没办法通过rm手动删除

-f 强制删除用户

语 法:usermod [选项] 用户名

-c:改变用户的描述信息

-d:改变用户的主目录,如果加上-m则会将旧家目录移动到新的目录中去 (-m应加在新目录之后)

usermod -d 目的文件夹 用户名

-g:改变用户的主属组

-G:设置用户属于哪些组

-l:改变用户的登录用名

不会改变属组的名称,原来的登录用户属于哪个组,现在还是属于哪个组

-s:改变用户的默认shell ,如果将一个用户的shell指定为sbin/nologin的话用su -l 用户名进不去,会显示回显:This account is currently not available.

-u:改变用户的UID

-L:锁住密码,使密码不可用,这时在/etc/shadow文件里该用户的密码第一位为!

通过 usermod -L 用户名锁住密码,这时在root用户下su -l 用户名还是可以进入到系统中,因为root用户su到任意用户里都是不需要密码的.但是如果登出root用户,用该用户登录时就会显示sorry,that didn't work,please try again.

-U:为用户密码解锁

passwd 用户名,然后输入两次密码改密码,root的可以修改其他user的密码,但是root以外的用户只能修改自己的密码.只有root用户可以用这个命令改密码.如果是普通用户要改自己的密码的话,直接登录自己的普通用户账户,输入passwd即可改密码.

root以外的其他用户需要遵循密码最小生存周期,比如如果是1的话一天之内最多改一次.而root用户没有这个限制

系统用户可以直接修改/etc/group文件达到管理组的目的,也可以使用以下指令:

※一个组的管理员不一定要包含在这个组当中

※一个组可以有多个管理员

※一个人也可以在多个组中担任管理员

cat /etc/gshadow 可以看到一个组的管理员是谁

gpasswd –a 用户名 用户组:将一个用户添加入一个组(从属组)

gpasswd –M 用户名... 用户组:将多个用户添加入一个组(从属组)

※这里的M是modify的缩写,添加完会覆盖原来已经添加到这个组的组员

gpasswd –d 用户名 用户组:将一个用户从一个组删除

gpasswd只能修改用户的从属组,想指定/改变主属组只能通过useradd/usermod

linux中如何用指令将用户加入到群组中

按照你的描述,是将用户加入到群组中,不是在新建用户的时候设置所属组,那么应该使用"gpasswd -a [要加入群组的用户名] [要加入的群组名]".

如果该群组没有组管理员,还应使用"gpasswd -A [管理员帐号] [群组名]"来设置该群组的管理员.群组管理员用来代替root完成将用户加入或移出群组的操作.

使用 usermod -G 命令也可以将用户加入群组,但会产生一个问题,用此命令将用户加入到新的群组后,该用户之前加入的那些群组都将被清空.

以上就是土嘎嘎小编为大家整理的linux添加群组命令相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!

版权声明:倡导尊重与保护知识产权。未经许可,任何人不得复制、转载、或以其他方式使用本站《原创》内容,违者将追究其法律责任。本站文章内容,部分图片来源于网络,如有侵权,请联系我们修改或者删除处理。

编辑推荐

热门文章