当前位置: 首页 > news >正文

从0到1一步一步玩转openEuler--13 openEuler用户组管理

image-20230210222529444

文章目录

      • 13.1 创建用户组
        • 13.1.1 groupadd命令
        • 13.1.2 用户组信息文件
        • 13.1.3 创建用户组实例
      • 13.2 修改用户组
        • 13.2.1 修改GID
        • 13.2.2 修改用户组名
      • 13.3 删除用户组
      • 13.4 将用户加入用户组或从用户组中移除
      • 13.5 切换用户组

在Linux中,每个普通用户都有一个账户,包括用户名、密码和主目录等信息。除此之外,还有一些系统本身创建的特殊用户,它们具有特殊的意义,其中最重要的是管理员账户,默认用户名是root。同时Linux也提供了用户组,使每一个用户至少属于一个组,从而便于权限管理。

用户和用户组管理是系统安全管理的重要组成部分,本节主要介绍openEuler提供的用户组管理命令,以及为普通用户分配特权的方法。

13.1 创建用户组

13.1.1 groupadd命令

在root权限下,通过groupadd命令可以为系统添加新用户组信息,其中 options 为相关参数, groupname 为用户组名称。

# groupadd [options] groupname

13.1.2 用户组信息文件

与用户组信息有关的文件如下:

  • /etc/gshadow:用户组信息加密文件。
  • /etc/group:组信息文件。
  • /etc/login.defs:系统广义设置文件。

13.1.3 创建用户组实例

例如新建一个用户组名为grouptest的用户,在root权限下执行如下命令:

[root@superman-21 ~]# groupadd grouptest
[root@superman-21 ~]# 
[root@superman-21 ~]# grep grouptest /etc/group
grouptest:x:1002:
[root@superman-21 ~]# 

13.2 修改用户组

13.2.1 修改GID

修改用户组ID,在root权限下执行如下命令,其中 GID 代表目标用户组ID, groupname 代表用户组,请根据实际情况修改:

# groupmod -g GID groupname

例如示例命令及输出信息如下:

[root@superman-21 ~]# grep grouptest /etc/group
grouptest:x:1002:
[root@superman-21 ~]# 
[root@superman-21 ~]# groupmod -g 1003 grouptest
[root@superman-21 ~]# 
[root@superman-21 ~]# grep grouptest /etc/group 
grouptest:x:1003:
[root@superman-21 ~]# 

13.2.2 修改用户组名

修改用户组名,在root权限下执行如下命令,其中 newgroupname 代表新用户组名, oldgroupname 代表已经存在的待修改的用户组名,请根据实际情况修改:

# groupmod -n newgroupname oldgroupname

例如示例命令及输出信息如下:

[root@superman-21 ~]# groupmod -n grouptest1 grouptest
[root@superman-21 ~]# 

13.3 删除用户组

在root权限下,使用groupdel命令可删除用户组。

例如,删除用户组grouptest,命令如下:

[root@superman-21 ~]# groupdel grouptest1
[root@superman-21 ~]# 

img 说明:
groupdel不能直接删除用户的主组,如果需要强制删除用户主组,请使用 groupdel -f Test 命令。

13.4 将用户加入用户组或从用户组中移除

在root权限下,使用gpasswd命令将用户加入用户组或从用户组中移除。

例如,将用户 test4 加入用户组 grouptest1 ,命令如下:

[root@superman-21 ~]# useradd test4
[root@superman-21 ~]# 
[root@superman-21 ~]# id test4
用户id=1003(test4) 组id=1004(test4)=1004(test4)
[root@superman-21 ~]# 
[root@superman-21 ~]# gpasswd -a test4 grouptest1
正在将用户“test4”加入到“grouptest1”组中
[root@superman-21 ~]# 
[root@superman-21 ~]# id test4
用户id=1003(test4) 组id=1004(test4)=1004(test4),1003(grouptest1)
[root@superman-21 ~]# 

例如,将用户 test4grouptest1 用户组中移除,命令如下:

[root@superman-21 ~]# gpasswd -d test4 grouptest1
正在将用户“test4”从“grouptest1”组中删除
[root@superman-21 ~]# 
[root@superman-21 ~]# id test4
用户id=1003(test4) 组id=1004(test4)=1004(test4)
[root@superman-21 ~]# 

13.5 切换用户组

一个用户同时属于多个用户组时,则在用户登录后,使用newgrp命令可以切换到其他用户组,以便具有其他用户组的权限。

例如,将用户root增加grouptest1 用户组,命令如下:

[root@superman-21 ~]# newgrp grouptest1Welcome to 5.10.0-60.18.0.50.oe2203.x86_64System information as of time:  202212月 07日 星期三 17:30:41 CSTSystem load:    0.00
Processes:      149
Memory used:    7.9%
Swap used:      0%
Usage On:       7%
IP address:     192.168.0.21
IP address:     192.168.122.1
Users online:   1[root@superman-21 ~]# 
[root@superman-21 ~]# id
用户id=0(root) 组id=1003(grouptest1)=1003(grouptest1),0(root) 上下文=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
[root@superman-21 ~]# 

image-20230212180913113

相关文章:

从0到1一步一步玩转openEuler--13 openEuler用户组管理

文章目录13.1 创建用户组13.1.1 groupadd命令13.1.2 用户组信息文件13.1.3 创建用户组实例13.2 修改用户组13.2.1 修改GID13.2.2 修改用户组名13.3 删除用户组13.4 将用户加入用户组或从用户组中移除13.5 切换用户组在Linux中,每个普通用户都有一个账户,…...

知不知道什么叫米筐量化?怎么来的?

现在量化市场范围越来越大,各种量化系统也是普遍性的了,不过米匡量化这个开发系统通常是由交易接口的专业开发团队开发的的结果,那么米匡量化的终端又是是怎么开发成功的呢?首先,我们可以从api接口的调用来了解&#x…...

Urho3D 事件Events

在脚本中,子系统通过以下全局财产可用:时间、文件系统、日志、缓存、网络、输入、ui、音频、引擎、图形、渲染器、脚本、控制台、debugHud、数据库。请注意,由于WorkQueue和Profiler的低级性质,它们不可用于脚本。 事件本身不需要…...

Rust学习入门--【8】复合类型

复合类型(compound type) 可以将多个不同类型的值组合为一个类型。 Rust中提供了两种内置的复合数据类型:元组(tuple)和数组(array)。 元组类型 元组是一个具有 固定长度 的数据集合 —— 无…...

【整理六】

1、props和state相同点和不同点?render方法在哪些情况下会执行? props是一个从外部传进组件的参数,由于React具有单向数据流的特性,所以他的主要作用是从父组件向子组件中传递数据,它是不可改变的,如果想要…...

Ubuntu20.04安装MySQL5.7与远程连接

一、安装MySQL5.7 1.更换镜像源 sudo cp /etc/apt/sources.list /etc/apt/sources.list.old #备份原来的文件 sudo vim /etc/apt/sources.list #修改sources.list文件配置文件内容如下所示: # 清华镜像源 deb https://mirrors.tuna.tsinghua.edu.cn/ubu…...

【yolov5】首次尝试目标检测利用prompt(完整操作流程)

1、打开prompt 2、切换到pytorch所在环境 conda activate freezing我的环境名是freezing,这里根据自己环境名去激活切换 3、进入到yolov5项目所在路径 激活完环境后立即执行指令当然是无效的,首先要进入到你的项目目录 首先看一下自己的项目在那个位…...

三大指标继续狂飙!重庆啤酒:不惧强弱分化加剧,深耕高端市场

十多年前,重庆啤酒因为9个跌停而被一片唱衰,资本市场经典的“关灯吃面”典故自此出现,被股民沿用至今。不过自2020年,重庆啤酒开始逆转走势,股价连续上涨。2021年重庆啤酒营收突破百亿大关,净赚11.66亿元&a…...

MySQL数据库14——更新和删除数据

SQL里面使用UPDATE更新数据,删除使用DELETE语句。 Mysql要修改一下设置,才能更新: 在左上角菜单栏里面选择偏好栏,取消下面这个红框的勾选 更新单个字段的数据 如果运行环境为MySQL 则使用以下语句进行备份。 CREATE TABLE stu…...

Java面试——MyBatis篇

✅作者简介:2022年博客新星 第八。热爱国学的Java后端开发者,修心和技术同步精进。 🍎个人主页:Java Fans的博客 🍊个人信条:不迁怒,不贰过。小知识,大智慧。 💞当前专栏…...

C++的 new 和 delete

文章目录一、new 和 delete 的使用二、operator new 和 operator delete 函数三、new 和 delete 的实现原理四、申请空间和释放空间应配套使用五、定位 new 表达式六、malloc/free 和 new/delete 的区别C语言的动态内存管理函数(malloc、calloc、realloc、free) 虽然可以继续在…...

MySQL 事务原理

文章目录1、事务1.1、ACID 特性1.1.1、原子性undo log1.1.2、一致性1.1.3、* 隔离性1.1.4、持久性redo log1.2、事务控制语句2、隔离级别2.1、隔离级别的分类2.1.1、读未提交 RU2.1.2、读已提交 RC2.1.3、可重复读 RR2.1.4、串行化 SC2.2、并发事务读异常2.2.1、* 脏读2.2.2、*…...

软件测试面试自我介绍/项目介绍居然还有模板?我要是早点发现就好了

目录 1、自我介绍 2、项目介绍 2.1、最全电商项目介绍 2.2、电商项目介绍 2.3、在线教育项目介绍 2.4、互联网金融项目介绍 总结 1、自我介绍 以XXX简历来举例(参照下面的案例,编写你的自我介绍,框架就是:我是谁&#xff0…...

new RegExp的使用

1.RegExp是什么 当检索某个文本时,可以使用一种模式来描述要检索的内容。RegExp 就是这种模式 RegExp 对象用于存储检索模式。 var patt1new RegExp("e");当使用该 RegExp 对象在一个字符串中检索时,将寻找的是字符 “e” g :表…...

供应商管理软件如何选型 好用的供应商管理软件推荐

供应商管理是采购中的重要环节。对于很多企业来说,做好内部供应商管理就能在行业竞争中提升自身的效益与竞争能力,供应商已成为一种战略筹码。 但在企业进行供应商管理过程中,往往会遇到供应商信息数据收集不全、等级划分不合理、绩效评价机…...

Python3遍历文件夹提取关键字及其附近字符

要求: 1,遍历文件夹下所有的.xml文件 2,从.xml文件中提取关键字以及左右十个字符 3,输出到excel 一:遍历文件夹找到所有xml文件及其路径 for root, dirs, files in os.walk(self.inputFilePath):for file in files:…...

「1」线性代数(期末复习)

🚀🚀🚀大家觉不错的话,就恳求大家点点关注,点点小爱心,指点指点🚀🚀🚀 第一章 行列式 行列式是一个数,是一个结果三阶行列式的计算:主对角线的乘…...

C++7:STL-模拟实现vector

目录 vector的成员变量 构造函数 reserve size() capacity() push_back 一些小BUG 赋值操作符重载 析构函数 【】操作符重载 resize pop_back Insert 迭代器失效 erase 二维数组问题 总结一下 vector,翻译软件会告诉你它的意思是向量,但其…...

笑死,面试官又问我SpringBoot自动配置原理

面试官:好久没见,甚是想念。今天来聊聊SpringBoot的自动配置吧? 候选者:嗯,SpringBoot的自动配置我觉得是SpringBoot很重要的“特性”了。众所周知,SpringBoot有着“约定大于配置”的理念,这一…...

分布式缓存服务DCS-企业版性能更强,稳定性更高

背景介绍 近年来,随着各行业业务需求急速增加,数据量和并发访问量呈指数级增长,原来只能依附于关系型数据库的传统“缓存”逐渐难以支撑上层业务,开源Redis也面临着如“容量有限”、 “可靠性有限”、 “数据重复拷贝&#xff0c…...

SpringBoot-17-MyBatis动态SQL标签之常用标签

文章目录 1 代码1.1 实体User.java1.2 接口UserMapper.java1.3 映射UserMapper.xml1.3.1 标签if1.3.2 标签if和where1.3.3 标签choose和when和otherwise1.4 UserController.java2 常用动态SQL标签2.1 标签set2.1.1 UserMapper.java2.1.2 UserMapper.xml2.1.3 UserController.ja…...

观成科技:隐蔽隧道工具Ligolo-ng加密流量分析

1.工具介绍 Ligolo-ng是一款由go编写的高效隧道工具,该工具基于TUN接口实现其功能,利用反向TCP/TLS连接建立一条隐蔽的通信信道,支持使用Let’s Encrypt自动生成证书。Ligolo-ng的通信隐蔽性体现在其支持多种连接方式,适应复杂网…...

RocketMQ延迟消息机制

两种延迟消息 RocketMQ中提供了两种延迟消息机制 指定固定的延迟级别 通过在Message中设定一个MessageDelayLevel参数,对应18个预设的延迟级别指定时间点的延迟级别 通过在Message中设定一个DeliverTimeMS指定一个Long类型表示的具体时间点。到了时间点后&#xf…...

五年级数学知识边界总结思考-下册

目录 一、背景二、过程1.观察物体小学五年级下册“观察物体”知识点详解:由来、作用与意义**一、知识点核心内容****二、知识点的由来:从生活实践到数学抽象****三、知识的作用:解决实际问题的工具****四、学习的意义:培养核心素养…...

【RockeMQ】第2节|RocketMQ快速实战以及核⼼概念详解(二)

升级Dledger高可用集群 一、主从架构的不足与Dledger的定位 主从架构缺陷 数据备份依赖Slave节点,但无自动故障转移能力,Master宕机后需人工切换,期间消息可能无法读取。Slave仅存储数据,无法主动升级为Master响应请求&#xff…...

【学习笔记】深入理解Java虚拟机学习笔记——第4章 虚拟机性能监控,故障处理工具

第2章 虚拟机性能监控,故障处理工具 4.1 概述 略 4.2 基础故障处理工具 4.2.1 jps:虚拟机进程状况工具 命令:jps [options] [hostid] 功能:本地虚拟机进程显示进程ID(与ps相同),可同时显示主类&#x…...

dify打造数据可视化图表

一、概述 在日常工作和学习中,我们经常需要和数据打交道。无论是分析报告、项目展示,还是简单的数据洞察,一个清晰直观的图表,往往能胜过千言万语。 一款能让数据可视化变得超级简单的 MCP Server,由蚂蚁集团 AntV 团队…...

Spring Cloud Gateway 中自定义验证码接口返回 404 的排查与解决

Spring Cloud Gateway 中自定义验证码接口返回 404 的排查与解决 问题背景 在一个基于 Spring Cloud Gateway WebFlux 构建的微服务项目中,新增了一个本地验证码接口 /code,使用函数式路由(RouterFunction)和 Hutool 的 Circle…...

代码规范和架构【立芯理论一】(2025.06.08)

1、代码规范的目标 代码简洁精炼、美观,可持续性好高效率高复用,可移植性好高内聚,低耦合没有冗余规范性,代码有规可循,可以看出自己当时的思考过程特殊排版,特殊语法,特殊指令,必须…...

Caliper 负载(Workload)详细解析

Caliper 负载(Workload)详细解析 负载(Workload)是 Caliper 性能测试的核心部分,它定义了测试期间要执行的具体合约调用行为和交易模式。下面我将全面深入地讲解负载的各个方面。 一、负载模块基本结构 一个典型的负载模块(如 workload.js)包含以下基本结构: use strict;/…...