Linux用户和用户组详解

article/2025/10/3 8:35:02

今天继续给大家介绍Linux基础知识,本文主要给大家介绍Linux用户和用户组。

一、Linux用户和用户组

(一)用户和用户组简介

与windows类似,Linux也有用户和用户组的概念。在Linux系统中,每次登录系统都必须以一个用户的身份登录,并且登录后的权限也会根据用户身份来确定。 每一个进程在执行时,也会有其用户,该用户也和进程所能控制的资源有关。Linux系统下的每一个目录、文件,都会有其属于的用户和用户组,我们称其为属主和属组。由此课件,用户和用户组与Linux系统的运行息息相关。在实际操作使用系统时,我们往往关注用户较多与关注用户组。
在Linux系统中,每个用户都有自己的用户ID,称为UID,每个用户组也有自己的用户组ID,称为GID,UID和GID在Linux系统中是不可重复的。Linux系统就是通过UID和GID来对用户和组进行管理的,而对于管理员来说,往往会设置用户名和组名,这样使得用户和用户组的使用管理更人性化。
在Linux系统中,一共有三种类型的用户组。
1、root用户
root用户时UID和GID都等于0的用户,是Linux系统中的“上帝”,拥有最大的权限。如果深入了解Linux系统,会发现root用户真的拥有很多特权,比如:无视Linux对权限的设置而强行读、写、执行文件,切换其他用户登录不需要密码,可以强行切换到已经所用的用户,只有root可以为普通用户修改密码等等。
2、系统用户
系统用户通常用于运行服务,但是此用户无家目录,也不能用于登录系统。例如,在yum安装apache、nginx等服务后,就会自动创建apache和nginx的用户和同名用户组。在CentOS6系统中,系统用户的UID范围是1-499,在CentOS7系统中,系统用户的ID是1-999。
3、普通用户
普通用户只能由root用户创建,该用户拥有家目录,并且可以登录,该用户的权限由root分配。普通用户拥有指定的shell环境。

(二)用户和用户组关系

在Linux系统中,每个用户必定属于一个主组,默认情况下属于与其同名的用户组,最多可以有31个附属组,从用户权限的角度看,主组和附属组其实差别不大,用户也会拥有其附属组的组相关权限。

(三)用户和用户组配置文件

Linux系统下用户和用户组相关的配置文件主要有以下个:
1、/etc/passwd
该配置文件内保存有所有的用户信息,如下所示:
在这里插入图片描述
在本配置文件中以冒号分割了用户的信息,从左到右依次是:
用户名:登录密码(以X代替):UID:GID:家目录:shell环境
在本文件中,凡是shell环境是/sbin/nologin的为不可登录系统用户
2、/etc/shadow
该配置文件保存了用户的密码信息,如下所示:
在这里插入图片描述
在该文件中,也是以冒号区分各个信息,可以看出,其中只有pzz和root用户拥有密码。
※3、/etc/group
该文件保存了用户组的信息,但是该文件不是很常用,有兴趣的同学可以自行查阅。
※4、/etc/gshadow
该文件保存了用户组的密码(其实用户组也没有密码)信息,但是该文件更不是很常用,有兴趣的同学可以自行查阅。
5、/etc/login.defs
该文件可以设置密码过期时间,密码最大长度限制等内容。

二、Linux用户和用户组管理相关命令

我们通常通过以下命令对Linux的用户和用户组进行管理。

(一)useradd添加用户

useradd命令一般用于添加用户,该命令常见参数如下:
-M 表示不创建家目录
-s 表示指定用户的shell环境
-u 表示指定用户的uid
-g 表示指定用户的gid(需要指定的gid存在)
-p 指定用户的密码(必须以密文的方式指定)
-G 表示指定用户的附属组(需要指定的gid存在)
useradd命令使用示例:

useradd Linux
useradd apache -M -s /sbin/nologin

上面第一条命令表示创建Linux的普通用户,第二条命令表示创建apache的系统用户。

(二)userdel删除用户

userdel命令可以删除用户,后面直接跟用户名可以直接删除该用户。但是,我们一般在删除用户时都会添加-r参数,表示连同该用户的家目录一起删除。
userdel命令执行示例如下:

userdel -r linux

在不删除家目录的情况下,删除该用户后如果想要再创建同名用户时则会失败,如下所示:
在这里插入图片描述
并且删除家目录也会被拒绝,如下所示:
在这里插入图片描述
删除用户还需要注意一个问题,就是删除该用户后,该用户创建的文件的属主和属组就会变成UID和GID显示,如下所示:
在这里插入图片描述

(三)usermod修改用户

usermod命令常用于修改用户的信息,常用参数如下:
-d 表示重新指定用户的家目录
-g 表示重新指定用户的(主)组
-G 表示给用户添加附属组
-L 表示锁定用户,被锁定的用户无法登录
-U 表示解除对用户的锁定
注意:如果在锁定用户后使用passwd命令修改该锁定用户的口令,则该用户会被自动解锁。
usermod命令给用户增加附属组如下所示:
在这里插入图片描述
注意,在上述操作中,必须首先存在一个GID为1001的组。

(四)其他常用命令

1、su命令
su命令用于切换用户和重新登录,直接执行命令su可以重新登录,在Linux系统中,一些配置文件生效需要执行该命令。用户的重登录过程非常快,执行后立马可以完成。使用su命令切换用户,可以有两种方式:

su newuser
su - newuser

这两条命令都可以切换新用户,但是区别在于采用上一条命令切换后当前目录不会发生改变,下一条命令切换后当前目录会切换成该用户的家目录。
2、id命令
id命令可以显示用户的信息,包括UID、GID等信息,id命令后面如果不加其他的命令参数表示查看的是当前登录用户的信息,如果加上其他用户的用户名则查询的是该用户的用户信息。
3、passwd命令
passwd命令用于修改用户的口令。每个用户都可以执行passwd命令修改自己的口令,root用户可以执行命令:

passwd targetuser

修改targetuser用户的口令。
https://blog.csdn.net/weixin_40228200/article/details/120576141


http://chatgpt.dhexx.cn/article/Ruyt7BnW.shtml

相关文章

Linux用户、用户组的管理

首先用户大家都不陌生,我们在使用电脑的时候进入电脑登录的就是我们的账号也就是用户,用户组顾名思义里面可以存放多个用户方便管理以及授权。 目录 一、用户 1、创建用户,不指定选项 2、创建用户,指定选项 3、删除用户 4、…

用户组是什么意思?怎么容易理解?有什么作用?

不少刚入行的运维小伙伴,不清楚用户组是什么?不知道用户组有什么作用?怎么样才能容易理解?这里我们小编就来给大家简单说说,仅供参考哦! 用户组是什么意思?怎么理解? 用户组是指一类…

集成算法 | 随机森林回归模型

所有的参数,属性与接口,全部和随机森林分类器一致。仅有的不同就是回归树与分类树的不同,不纯度的指标, 参数Criterion不一致。 RandomForestRegressor(n_estimatorswarn, criterionmse, max_depthNone, min_samples_split2, min_…

Python实现贝叶斯优化器(Bayes_opt)优化随机森林回归模型(RandomForestRegressor算法)项目实战

说明:这是一个机器学习实战项目(附带数据代码文档视频讲解),如需数据代码文档视频讲解可以直接到文章最后获取。 1.项目背景 贝叶斯优化器 (BayesianOptimization) 是一种黑盒子优化器,用来寻找最优参数。 贝叶斯优化器…

随机森林回归预测_jupyter notebook

改编自https://www.bilibili.com/video/BV1iJ41127cw?spm_id_from333.337.search-card.all.click提供的代码。下文为改动之后的代码: import numpy as np import pandas as pdfrom sklearn.model_selection import train_test_split import matplotlib.pyplot as …

Python实现Stacking回归模型(随机森林回归、极端随机树回归、AdaBoost回归、GBDT回归、决策树回归)项目实战

说明:这是一个机器学习实战项目(附带数据代码文档视频讲解),如需数据代码文档视频讲解可以直接到文章最后获取。 1.项目背景 Stacking通常考虑的是异质弱学习器(不同的学习算法被组合在一起),st…

Matlab TreeBagger随机森林回归实例

简介 在探寻变量之间相关性时,简单线性相关容易实现,对于多元的非线性关系,如果不知道关系式(函数方程)很难建立自变量和因变量之间关系。而机器学习方法为解决这类复杂多元非线性问题提供了很好的思路。 其中&#x…

随机森林分类+随机森林回归+实例:用随机森林回归填补缺失值+机器学习调参思想+实例:随机森林在乳腺癌数据上的调参

文章目录 一、集成算法概述二、重要参数1、控制基评估器的参数2、n_estimators3、random_state4、bootstrap & oob_score 三、重要属性和接口四、随机森林回归器1、重要参数,属性与接口2、实例:用随机森林回归填补缺失值 五、机器学习中调参的基本思…

采用支持向量回归(SVR)和随机森林回归预测两种机器学习方法对房价进行预测(附完整代码)

大家好,我是带我去滑雪,每天教你一个小技巧! 本文分别采用支持向量回归(SVR)和随机森林回归预测两种机器学习方法对房价进行预测。随机将数据分为训练集和测试集,比例为8:2,数据和代码均在文末…

python随机森林回归数据实战

文章目录 前言一、随机森林回归器参数介绍二、数据实战1.数据介绍2.重点代码2.1特征集和标签集获取2.2数据集划分2.3随机森林模型训练2.4预测结果可视化2.5 特征重要性选择及可视化 3.完整代码 总结 前言 我为什么写这篇博客? 答:记录一下自己对于sklea…

随机森林回归实验

随机森林回归实验 文章目录 随机森林回归实验实验说明实验步骤可视化 实验说明 sklearn包里已经实现了随机森林回归模型,导入使用即可。 数据集我们使用的是 sklearn包中自带的波士顿房价数据集。 实验环境:Anaconda3VScodePython版本:3.7…

随机森林回归算法的Python实现与应用

摘要 随机森林回归是一种集成学习算法,通过组合多个决策树来实现回归任务,构建多个决策树,并将它们组合成一个强大的回归模型。本文将会从随机森林回归算法的算法原理、Python实现及实际应用进行详细说明。 1 绪论 在现在的数据分析及数学建…

随机森林回归算法

随机森林回归算法原理 随机森林回归模型由多棵回归树构成,且森林中的每一棵决策树之间没有关联,模型的最终输出由森林中的每一棵决策树共同决定。 随机森林的随机性体现在两个方面: 1、样本的随机性,从训练集中随机抽取一定数量的…

随机森林回归器

文章目录 前言一、重要参数criterion 二、重要属性和接口三、随机森林回归用法总结 前言 所有的参数,属性与接口,全部和随机森林分类器一致。仅有的不同就是回归树与分类树的不同,不纯度的指标,参数Criterion不一致。 一、重要参…

随机森林分类、回归算法原理及调参实战

集成算法 ensemble 通过在数据集上构建多个模型,集成所有模型的建模结果,得到一个综合的结果,以此来获得比单个 模型更好的分类或回归表现装袋法bagging:构建多个相互独立的基评估器(base estimator),然后…

LESSON 9.1 随机森林回归器的实现

目录 三 随机森林RandomForest   1 RamdomForestRegressor的实现   2 随机森林回归器的参数    2.1 弱分类器结构    2.2 弱分类器数量    2.3 弱分类器训练的数据    2.4 其他参数 四 增量学习:随机森林处理巨量数据   1 普通学习vs增量学习   2 增量学…

随机森林简单回归预测

随机森林(RandomForest)简单回归预测 随机森林是bagging方法的一种具体实现。它会训练多棵决策树,然后将这些结果融合在一起就是最终的结果。随机森林可以用于分裂,也可以用于回归。主要在于决策树类型的选取,根据具体…

【机器学习项目实战】随机森林(random forest)回归(RandomForestRegressor)模型Python实现

说明:这是一个机器学习实战项目(附带数据代码),如需数据完整代码可以直接到文章最后获取。 1.定义问题 在电子商务领域,现在越来越多的基于历史采购数据、订单数据等,进行销量的预测;本模型也是…

用Python实现随机森林回归

1 介绍 使用Scikit-Learn模块在Python实现任何机器学习算法都比较简单,并且不需要了解所有细节。这里就对如何进行随机森林回归在算法上进行概述,在参数上进行详述。希望对你的工作有所帮助。 这里,将介绍如何在Python中构建和使用Random Fo…

DS和[address]

8086CPU中,用16位寄存器来存储一个字。高8位存放高位字节,低8位存放低位字节。在内存中存储时,由于内存单元是字节单元,则一个字要用两个地址连续的内存单元来存放,这个字的低位存放低地址单元中,高位字节存…