文章首发于【博客园-陈树义】,请尊重原创保留原文链接。

在Linux系统里,有两个系统文件与用户组密切相关,它们分别是:/etc/group/etc/gshadow

  • /etc/group:存储了用户组信息。

文件每条记录遵循着相同的格式:组名:组密码位:GID:组成员列表。例如mail用户组的GID是12,组成员有mail、postfix。

  • /etc/gshadow:存储了用户组的密码信息。

每一行都遵循着相同的格式:组名:组密码:用户组管理员账号:组成员列表。例如mail用户组的用户管理员,组密码隐藏了,没有组管理员,成员有mail/postfix两位成员。

创建用户组

groupadd -g 888 frontend

创建frontend用户组,并指定用户组ID。常用groupadd参数参考下表:

参数 描述
-f 如果组已经存在则成功退出
-g 为新组使用 GID
-h 显示此帮助信息并推出
-K 不使用 /etc/login.defs 中的默认值
-o 允许创建有重复 GID 的组
-p 为新组使用此加密过的密码
-r 创建一个系统账户
-R chroot 到的目录

文章首发于【博客园-陈树义】,请尊重原创保留原文链接。

删除用户组

groupdel frontend

删除frontend用户组

修改用户组信息

groupmod -n backend frontend 

将用户组名从frontend改为backend。

设置组密码

gpasswd backend

用gpasswd可以为backend用户组设置组密码。

用户组成员管理

gpasswd -a zhangsan backend 

上面的命令把zhangsan加入到backend用户组中。更多gpasswd命令可选参数参考下表:

参数 描述
-a 添加用户到用户组
-d 从有用户组中删除用户
-A 设置用户组管理员
-r 删除用户组密码
-R 禁止用户加入该组

查看用户隶属的组

groups zhangsan

上面的命令查看zhangsan隶属于哪一些用户组。

用户自主加入用户组

gpasswd是通过管理员将成员加入用户组,用户如果知道了组密码,也可以自己加入用户组。

newgrp backend

上面的命令将当前用户加入backend用户组,根据提示输入组密码即可。

其他配置

文件 描述
/etc/login.defs 设置useradd命令的缺省警告时间、最长有效时间等信息等。
/etc/default/useradd 设置useradd命令的缺省home目录,使用的shell等。
/etc/motd 存放登录成功之后的提示信息。
/etc/issue 存放登录的提示信息。只要你尝试登录,它就会提示这个文件中的信息,一般存放一些欢迎信息。

文章首发于【博客园-陈树义】,请尊重原创保留原文链接。

Linux学习总结(十三)—— CentOS用户组管理:创建用户组、修改用户组、删除用户组的更多相关文章

  1. [转帖]Linux学习笔记之rpm包管理功能全解

    Linux学习笔记之rpm包管理功能全解 https://www.cnblogs.com/JetpropelledSnake/p/11177277.html rpm 的管理命令 之前学习过 yum 的 ...

  2. Oracle触发器原理、创建、修改、删除

    本篇主要内容如下: 8.1 触发器类型 8.1.1 DML触发器 8.1.2 替代触发器 8.1.3 系统触发器 8.2 创建触发器 8.2.1 触发器触发次序 8.2.2 创建DML触发器 8.2. ...

  3. 基于SpringBoot从零构建博客网站 - 新增创建、修改、删除专栏功能

    守望博客是支持创建专栏的功能,即可以将一系列相关的文章归档到专栏中,方便用户管理和查阅文章.这里主要讲解专栏的创建.修改和删除功能,至于专栏还涉及其它的功能,例如关注专栏等后续会穿插着介绍. 1.创建 ...

  4. Java连接Jira,创建、修改、删除工单信息

    还不了解Jira是什么的同学可以看一下这篇文章:https://www.cnblogs.com/wgblog-code/p/11750767.html 本篇文章主要介绍如何使用Java操作Jira,包 ...

  5. Java——Java连接Jira,创建、修改、删除工单信息

    还不了解Jira是什么的同学可以看一下这篇文章:https://www.cnblogs.com/wgblog-code/p/11750767.html 本篇文章主要介绍如何使用Java操作Jira,包 ...

  6. oracle 11g 如何创建、修改、删除list-list组合分区

    Oracle11g在分区方面做了很大的提高,不但新增了4种复合分区类型,还增加了虚拟列分区.系统分区.INTERVAL分区等功能. 9i开始,Oracle就包括了2种复合分区,RANGE-HASH和R ...

  7. MySQL:创建、修改和删除表

    其实对很多人来说对于SQL语句已经忘了很多,或者说是不懂很多,因为有数据库图形操作软件,方便了大家,但是我们不能忘记最根本的东西,特别是一些细节上的东西,可能你用惯了Hibernate,不用写SQL语 ...

  8. SQLite 入门教程(二)创建、修改、删除表 (转)

    转于 SQLite 入门教程(二)创建.修改.删除表 一.数据库定义语言 DDL 在关系型数据库中,数据库中的表 Table.视图 View.索引 Index.关系 Relationship 和触发器 ...

  9. SQL Server索引进阶:第十二级,创建,修改,删除

    在第十级中我们看到了索引的内部结构,在第十一级中我们看到了平衡树结构潜在的负面影响:索引碎片.有了索引内部结构的知识,我们可以检查在执行数据定义语句和数据操作语句的时候,都发生了什么.在本级中我们介绍 ...

  10. hive -- 分区,分桶(创建,修改,删除)

    hive -- 分区,分桶(创建,修改,删除) 分区: 静态创建分区: 1. 数据: john doe 10000.0 mary smith 8000.0 todd jones 7000.0 boss ...

随机推荐

  1. 跳跳棋(9018_1563)(BZOJ_2144)

    题目: Hzwer的跳跳棋是在一条数轴上进行的.棋子只能摆在整点上.每个点不能摆超过一个棋子. 某一天,黄金大神和cjy用跳跳棋来做一个简单的游戏:棋盘上有3颗棋子,分别在a,b,c这三个位置.他们要 ...

  2. 使用curl,libcurl访问Https

    编译curl,libcurl 下载curl源码(git clone https://github.com/curl/curl),在目录curl\winbuild\BUILD.WINDOWS.txt文件 ...

  3. 【NOI模拟】谈笑风生(主席树)

    题目描述 设 T 为一棵有根树,我们做如下的定义: 设 a 和 b 为 T 中的两个不同节点.如果 a 是 b 的祖先,那么称 “ a 比 b 不知道高明到哪里去了 ” . 设 a 和 b 为 T 中 ...

  4. Java之戳中痛点 - (6)避免类型自动转换,例如两个整数相除得浮点数遇坑

    先来看一个例子: package com.test; public class calculate { /** * 光速30万公里/秒 */ public static final int LIGHT ...

  5. tensorflow l2_loss函数

    1.l2_loss函数 tf.nn.l2_loss(t, name=None) 解释:这个函数的作用是利用 L2 范数来计算张量的误差值,但是没有开方并且只取 L2 范数的值的一半,具体如下: out ...

  6. Spring源码情操陶冶-AbstractApplicationContext#finishBeanFactoryInitialization

    承接前文Spring源码情操陶冶-AbstractApplicationContext#registerListeners 约定web.xml配置的contextClass为默认值XmlWebAppl ...

  7. Java之IO流概述和File基本操作

    IO流图解 IO(in / out)流的分类 流向: 输入流  读取数据 输出流  写出数据 数据类型: 字节流 一个字节占8位, 以一个字节为单位读数据 八大数据类型所占字节数: byte(1), ...

  8. javascript编程解决黑化的牛牛问题

    问题描述 时间限制:1秒 空间限制:32768K 牛牛变得黑化了,想要摧毁掉地球.但他忘记了开启地球毁灭器的密码.牛牛手里有一个字符串S,牛牛还记得从S中去掉一个字符就恰好是正确的密码,请你帮牛牛求出 ...

  9. centos7启动过程及systemd祥细说明

    开机启过程 POST->BOOT SEQUENCE-> BOOTLOADER->KERNEL + INITRAMFS(INITRD)->ROOTFS->/sbin/ini ...

  10. poj 3761 bubble sort (排列组合)

    #include<cstdio> #include<cstring> #define ll long long #define mod 20100713 ; ll a[maxn ...