linux用户管理_用户和组

2 用户管理

2.1 用户和组的基本概念和作用

2.1.1 账户实质
账户实质就是一个用户在系统上的标识,系统依据账户ID来区分每个用户的文件、进程、任务,给每个用户提供特定的工作关键(如用户的工作目录、SHELL版本以及环境配置等),使每个用户的工作都能独立不受干扰地进行。
2.1.2 用户和组
在Linux系统中,每次登录系统都必须以一个用户的身份登录,并且登录后的权限也会根据用户身份来确定。 每一个进程在执行时,也会有其用户,该用户也和进程所能控制的资源有关。Linux系统下的每一个目录、文件,都会有其属于的用户和用户组,我们称其为属主和属组。
  • 用户账户分类
·普通用户账户:在系统上的任务是进行普通工作。
·超级用户账户(或管理员账户):在系统上的任务是对普通用户和整个系统进行管理。
每个用户都被分配了一个唯一的用户ID号:
·超级用户:UID=0,GID=0
·普通用户:UID>=1000
·系统用户(伪用户,不可登录):0<UID<1000
·当用户登录时,他们被分配了一个主目录和一个运行的程序(通常是 shell)。
·若无适当权限,用户无法读取、写入或执行彼此的文件。

组账户

·组是用户的集合
·每个组都被分配了一个唯一的组ID号(GID) 
·组和GID被保存在 /etc/group 文件中 
·每个用户都有他们自己的私有组 
·每个用户都可以被添加到其他组中来获得额外的存取权限 
·组中的所有用户都可以共享属于该组的文件
  • 组账户的分类 标准组:
·标准组可以容纳多个用户
·若使用标准组,在创建一个新的用户时就应该指定他所属于的组

私有组:

·私有组中只有用户自己
·当在创建一个新用户时, 若没有指定他所属于的组,RHEL/CentOS就建立一个和该用户同名的私有组,且用户被分配到这个私有组中
·优点:防止新文件归 “公共” 组所有 
·缺点:可能会鼓励创建 “任何人都可以访问” 的文件
  • 用户和组的关系
·组是用户的集合。
·一个标准组可以容纳多个用户。
·同一个用户可以同属于多个组,这些组可以是私有组,也可以是标准组。
·当一个用户同属于多个组时,将这些组分为:
    主组(初始组):用户登录系统时的组。
    附加组:登录后可切换的其他组。
2.1.3 存储用户信息的文件
  • /etc/passwd:文件中每行定义一个用户账号,每行分为多个字段定义不同用户账号的不同属性,各字段间用“:”分隔。

例:root:x:0:0:root:/root:/bin/bash
=用户名:x:uid:gid:描述:HOME:shell
(7列)
·name:这是用户登录系统时使用的用户名,在系统之是唯一的。
·password:在此文件中的口令是X,这表示用户的口令是被/etc/shadow文件保护的。
​
·uid:用户的识别号,是一个数字。每个用户的UID都是唯一的。
·gid:用户的组的识别号,也是一个数字。每个用户账户在建立好后都会有一个主组。主组相同的账户其GID相同。
​
·description:用户的个人资料,包括地址、电话等信息。
·home:用户的主目录,通常在/home下,目录名和账户名相同。
·shell:用户登录后启动的shell,默认是/bin/bash。

例:查看linux支持的shell类型

/etc/shells 
  • /etc/shadow:保存经过加密的用户口令

例:root:$6$Bqh7RXBwbxb3o1X0$/Yuh7GE.LgPbZqf.8CUG6ag/HUUyx9u.U83K0MTW3xdYf9xFiK0GxqumIZjHaYUhIiGKOm2RV84/4MQoULds20::0:99999:7:::
​
bin:*:16659:0:99999:7:::
​
=用户名:口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:保留位
(8列)
·用户名:用户登录名
·口令:用户的密码,$1$,MD5加密;$2$,Blowfish加密;$5$,SHA-256加密;$6$,SHA-512加密;*,用户不能用;!!,密码过期
·最后一次修改的时间:从1970年1月1日起,到用户最后一次更改密码的天数
·最小时间间隔:从最后一次修改时间到用户可以更改密码的天数(0,当天可以修改密码;x,修改密码x天后才能再次修改)
·最大时间间隔:从1970年1月1日起,到用户必须更改密码的天数(99999表示密码有效期无限)
·警告时间:在用户密码过期之前多少天提醒用户更新
·不活动时间:在用户密码过期之后到禁用账户的天数
·失效时间:从1970年1月1日起,到账户被禁用的天数
  • /etc/group

例:
root:x:0:
=组名:组口令:GID:组成员
组名:用户登录系统时的默认组名,它在系统中是唯一的
口令:组口令,由于安全性原因,已不使用该字段保存口令,用“x”占位 
GID:是一个整数,系统内部用它来标识组
组内用户列表:属于该组的所有用户名表,列表中多个用户间用“,”分隔
  • /etc/gshadow

例:
root:::
=组名:组口令:组的管理员账户:组成员
组名:组名称,该字段与group文件中的组名称对应 
加密的组口令:用于保存已加密的口令
组的管理员账号:管理员有权对该组添加删除账号
组内用户列表:属于该组的用户成员列表,列表中多个用户间用“,”分隔

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/202933.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

ubuntu终端代理配置

ubuntu浏览器的无需手动设置,主要解决在终端中的配置问题,按照下面配置后可能会ping不通一些ip,但wget/git都是可以的,具体原因以后再分析 查找端口 首先要找到自己代理对应的HTTP端口,以QV2ray软件作为示例,我为8889 手动配置 # 配置系统proxy export http_proxy=1…

怎么一键批量转换PDF/图片为Excel、Word,从而提高工作效率?

在处理大量PDF、图片文件时&#xff0c;我们往往需要将这些文件转换成Word或Excel格式以方便编辑和统计分析。此时&#xff0c;金鸣表格文字识别大师这款工具可以发挥巨大作用。下面&#xff0c;我们就来探讨如何使用它进行批量转换&#xff0c;以实现高效处理。 一、准备工作…

flask中路由route根据字典ID展示部分内容,字典名展示全部内容

from flask import Flask, jsonify , request,render_template,app Flask(__name__)app.config[JSON_AS_ASCII] Falsebooks [{"id": 1, "name": 三国演义},{"id": 2, "name": 水浒传},{"id": 3, "name": 西游记…

太极拳的招式有哪些?

太极拳的招式有很多&#xff0c;下面列举一些常见的太极拳招式&#xff1a; 起势&#xff1a;太极拳的第一个动作&#xff0c;从预备姿势开始&#xff0c;身体慢慢放松&#xff0c;重心移至左腿&#xff0c;然后慢慢屈膝&#xff0c;上体屈从向前&#xff0c;双臂自然下垂。 野…

docker (简介、dcoker详细安装步骤、容器常用命令)一站打包- day01

一、 为什么出现 Docker是基于Go语言实现的云开源项目。 Docker的主要目标是“Build&#xff0c;Ship and Run Any App,Anywhere”&#xff0c;也就是通过对应用组件的封装、分发、部署、运行等生命周期的管理&#xff0c;使用户的APP&#xff08;可以是一个WEB应用或数据库应…

【傻瓜级JS-DLL-WINCC-PLC交互】8.DLL读写WINCC连接的PLC数据

思路 JS-DLL-WINCC-PLC之间进行交互&#xff0c;思路&#xff0c;先用Visual Studio创建一个C#的DLL控件&#xff0c;然后这个控件里面嵌入浏览器组件&#xff0c;实现JS与DLL通信&#xff0c;然后DLL放入到WINCC里面的图形编辑器中&#xff0c;实现DLL与WINCC的通信。然后PLC与…

MacBook macOs安装RabbitMQ【超详细图解】

目录 一、使用brew安装RabbitMQ 二、安装RabbitMQWeb管理界面 三、启动RabbitMQ 一、使用brew安装RabbitMQ 刚好项目要用到RabbitMQ&#xff0c;安装顺便写下安装步骤记录一下以备用 使用brew命令安装&#xff0c;一般Mac会自带这个命令&#xff0c;如没有&#xff0c;…

护眼灯对眼睛有好处吗?考公护眼台灯推荐

根据国家卫健委发布的最新数据&#xff0c;目前我国儿童青少年近视率已经达到了相当高的水平。其中&#xff0c;小学生的视力问题占比接近40%&#xff0c;高中生和大学生的近视率则超过70%并且逐年上升。可以说10个学生里面就有7个学生入手一副眼镜。 为了避免这一现象的加深&a…

notepad++ 插件JSONView安装

1&#xff0c;前提 开发过程中经常需要处理json格式语句&#xff0c;需要对json数据格式化处理&#xff0c;因为使用的是虚拟机内开发&#xff0c;所以没法连接外网&#xff0c;只能在本地电脑下载插件后&#xff0c;然后上传到虚拟机中&#xff0c;进行安装使用。 2&#xf…

JavaScript 特殊数据类型

JavaScript 特殊数据类型 目录 JavaScript 特殊数据类型 一、空值&#xff08;null型&#xff09; 二、未定义值&#xff08;undefined型&#xff09; 三、转义字符 JavaScript的特殊数据类型有3种&#xff1a; &#xff08;1&#xff09;空值&#xff08;null型&#xf…

Django 用户验证与权限管理详解

概要 Django是一款强大且灵活的Python Web框架&#xff0c;不仅在构建功能复杂的网站应用中表现出色&#xff0c;还在诸如用户验证、权限管理等细微之处提供了优秀的解决方案。在多用户、权限复杂的Web应用中&#xff0c;认证和权限管理尤其重要。接下来&#xff0c;我们就来探…

区间合并笔记

文章目录 什么是区间合并怎么做区间合并AcWing 803. 区间合并思路解析my - CODEdalao の CODE 什么是区间合并 区间合并是指给定多个区间&#xff0c;让你将重合的区间合并为一个区间 怎么做区间合并 区间合并类问题大多三个办法&#xff1a; 按左端点排序按右端点排序按左右…

虹科分享 | 平衡速度和优先级:为多样化的实时需求打造嵌入式网络(4)——从理论到实践:CANopen源代码配置

正如前文所述&#xff0c;CANopen的适应性在满足实时应用需求方面发挥着至关重要的作用。本系列文章的最后一部分将向您展示 CANopen 源代码配置的技术细节&#xff0c;以及实现高效实时性能的优化方法。 前文回顾&#xff1a; 虹科分享 | 平衡速度和优先级&#xff1a;为多样…

linux resin的安装

1. 下载安装包 1.1 下载地址&#xff1a;https://caucho.com/products/resin/download 这里我下载的是普通版本的resin&#xff0c;没有选resin pro 版本。 科普一下&#xff0c;从性能上来说 resin和resin pro 版本的性能没区别。 resin pro 版本的 和resin 普通版本的文件是…

Unity求向量A在平面L上的投影向量

如题&#xff1a;求向量A在平面L上的投影向量(图左) 即求 其实等价于求向量&#xff0c;那在中&#xff0c;,所以只需要求即可 而就是在平面L的法向量的投影坐标&#xff0c;所以代码就是 /// <summary>/// 求向量A在平面B上的投影向量/// </summary>/// <para…

EI级 | Matlab实现TCN-LSTM-Multihead-Attention多头注意力机制多变量时间序列预测

EI级 | Matlab实现TCN-LSTM-Multihead-Attention多头注意力机制多变量时间序列预测 目录 EI级 | Matlab实现TCN-LSTM-Multihead-Attention多头注意力机制多变量时间序列预测预测效果基本介绍程序设计参考资料 预测效果 基本介绍 1.【EI级】Matlab实现TCN-LSTM-Multihead-Attent…

java:IDEA中Maven常用操作

文章目录 背景1、Reload All Maven Projects:2、Generate Sources and Update Folders For All Projects:3、Download Sources and/or Documentation:4、Add Maven Projects5、Run Maven Build6、Execute Maven Goal7、Toggle Offline Mode8、Toggle Skip Tests Mode9、Collaps…

相机标定张正友、opencv和halcon对比(1)

本文将从基本标定开始&#xff0c;结合实际工作经验&#xff0c;分析张正友、opencv和halcon三者相机标定的深层原理与不同之处&#xff0c;内容比较多&#xff0c;如果出现错误请指正。 相机光学模型 我们使用的镜头都是由多组镜片组成&#xff0c;它实际上是一种厚透镜模型…

易基因:人精子H3K4me3 ChIP-seq和DNA甲基化WGBS揭示与生育和发育相关重叠区域

大家好&#xff0c;这里是专注表观组学十余年&#xff0c;领跑多组学科研服务的易基因。 目前&#xff0c;六分之一的夫妇患有不孕不育&#xff0c;其中多达一半的病例由男性因素引起&#xff0c;在过去的40年中&#xff0c;精子数量下降了50%。尽管导致精子质量和数量下降的因…

Javase | Java常用类 (不断补充中...)

目录: 1.Object类2.String类3.StringBuffer类4.Math类5.Random类6.包装类(不断补充中...) 1.Object类 Object类是Java语言中的所有类的超类&#xff0c;即所有类的根。它中描述的所有方法&#xff0c;所有类都可以使用。 equals( ) : 指示其他某个对象与此对象“是否相等” (比…