linux基于用户身份对资源访问进行控制的解析及过程
linux中用户分为三类
1.超级用户(root) 拥有至高无上的权限
2.普通用户 人为创建、权限小,权限受到控制
3.程序用户 运行程序的用户,不是给人使用的,给程序使用的,一般不给登录!
组账号(正对用户而言)
1.基本组:有且唯一 或称为私有组
2.附加组(公共组) 可有可无
vid号跟gid号
vid:用户id号
gid:组id号
系统中如何区分客户的身份:根据vid用户号来区分
用户id号:
超级用户id:0
centos7 普通用户:1000(包含)----6万(最大值)
程序用户:1-999
centos6 : 超级用户号 0
普通用户:500以后
程序用户:1-499
/etc/passwd : 存放客户信息 查看客户信息 一共七段 每段用:号隔开

用户: boot : X : 0 :0 :root : /root :/bin/bash
用户账号 密码 用户id 组id 备注信息 家目录 shell类型
/etc/shadow 表示存放密码的地方 每一行对应一个用户得到密码记录 密码信息


加密的密码 中 *!! 表示不可以登录
用户初始配置文件
useradd 创建用户/增加用户账户 并对用户个性化设置
使用useradd最后是在passwd文件中添加一条记录,实际是修改了passwd文件
格式: useradd 【选项】 用户名
-u 知己vid标记号 为了区分权限


-d 指定家目录

-e 指定失效时间
将失效时间变成2024-01-12 图二 19734 是天数 表示从1970-1-1(linux诞生)开始算起 到2024-1-12 正好19734天


-g 指定用户的基本组名 (或vid)

正常情况下 新建一个用户 它的组名跟它名字是一样的
如果改的话 如图所示:

-G 指定用户的附加组名(或gid号)
-M 不显示家目录
如图所示 新建沈晨用户 但是查看home家目录里面 没有shenchen


-s 指定用户登录shell类型
-r 创建程序用户
-c 写备注信息
-p 密码
passwd 设置密码 更改密码
-d 清空用户的密码 使之无需密码即可登录
-l 锁定用户账号,不能登录
-S (大写s)查看用户的状态
-u 解锁用户账户
-l 锁定之后 看不见kuyu的用户

-u 解锁完之后 kuyu的用户又出现

免交互修改密码:
ehco 123123 | passwd 用户 --stdin

usermod 修改用户账号的属性,对已有的属性进行修改
跟useradd 命令差不多
-l 更改用户账号的登录名称 修改用户名

-L 锁定用户账户

-U 解锁用户账号

拓展:

userdel 删除用户

userdel -r 删除用户的同时 ,把家目录也删除

当删除ky12时,家目录里面还是有ky12

当加上 -r时 删除liliu 家目录就没有liliu
组账号文件
groupadd 创建组
/etc/group 查看组账号的信息
groupadd -g 组用户名 创建组并创建组id号


gpasswd 添加删除组成员
-a 想组内添加用户

-d 从组内删除一个成员

-M 定义组成员列表 以,号隔开

文件、文件夹的权限和归属

rw-r--r--
rw- r-- r--
属主u 属组g 其他0 a表示所有人
一个文件夹可以被删除和所在文件夹有关,文件夹有wx权限,便可以删除
复制文件 当前用户一定要有读r权限,能不能操作文件、文件夹河你当前登录的用户权限有关
chmod 设置文件和目录的权限 修改权限
+ 在原有的基础上加上权限
- 在原有的基础上减掉权限
= 原有权限不看 等于号后面的权限
chmod -r 递归 所有都改
例如:属组的用户删除读取权限:
chmod g-r test
第一个 第二个 表示 开机登录前使用的命令
第三个表示关机退出前使用的命令
chown 修改属主、属组
格式: chown 属主:属组 文件夹/文件
修改属主 chown 用户名 文件夹/文件
修改属组 chown :用户名 文件夹/文件
特殊权限
suid 属主,此处s表示使用这个命令程序时,把当前用户当成文件的所属主,当做主人
chmod u+s /usr/nom/vim
取消 chmod u-s 、usr/bin/vim
sticky位
权限只对文件夹有效 多个t(粘贴位)
具有写权限的目录通常用户可以删除该目录中的任何文件,无论该文件的权限或拥有权,在目录设置sticky 添加sticky位,只有问价的所有者或者root可以删除
chmod 0+t /opt/aa
chmod 0-t /opt/aa
访问控制列表acl
可以对具体的文件控制,对单个文件进行控制精确控制
setfail -m u:lisi:rw passwd 给lisi用户添加读写
-x 值清一次
-b 全清
getfacl passwd 查看acl的权限
相关文章:
linux基于用户身份对资源访问进行控制的解析及过程
linux中用户分为三类 1.超级用户(root) 拥有至高无上的权限 2.普通用户 人为创建、权限小,权限受到控制 3.程序用户 运行程序的用户,不是给人使用的,给程序使用的,一般不给登录! 组账…...
手动创建idea SpringBoot 项目
步骤一: 步骤二: 选择Spring initializer -> Project SDK 选择自己的JDK版本 ->Next 步骤三: Maven POM ->Next 步骤四: 根据JDK版本选择Spring Boot版本 11版本及以上JDK建议选用3.2版本,JDK为11版本…...
【Go语言入门:Go语言的数据结构】
文章目录 3.Go语言的数据结构:3.1. 指针3.2. struct(结构体)3.3. Map(映射,哈希) 3.Go语言的数据结构: 简介: 在Go语言中,数据结构体可以分为四种类型:基础类型、聚合类型、引用类型…...
QT designer的ui文件转py文件之后,实现pycharm中运行以方便修改逻辑,即添加实时模板框架
为PyCharm中的实时模板,你需要遵循以下步骤: 打开PyCharm的设置: 选择 File > Settings(在macOS上是 PyCharm > Preferences)。 导航到实时模板: 在设置中找到 Editor > Live Templates。 添加新的模板组 (可选): 为了…...
什么是负载均衡?
负载均衡是指在计算机网络领域中,将客户端请求分配到多台服务器上以实现带宽资源共享、优化资源利用率和提高系统性能的技术。负载均衡可以帮助小云有效解决单个服务器容量不足或性能瓶颈的问题,小云通过平衡流量负载,使得多台服务器能够共同…...
Python和Java的优缺点
Python的优点: 简单易学:Python的语法简洁清晰,易于学习和理解。丰富的库和框架:Python拥有庞大的标准库和活跃的开源社区,可以快速使用各种功能强大的库和框架,比如NumPy、Pandas、Django等。可读性强&am…...
AES - 在tiny-AES-c基础上封装了2个应用函数(加密/解密)
文章目录 AES - 在tiny-AES-c基础上封装了2个应用函数(加密/解密)概述增加2个封装函数的AES库aes.haes.c在官方测试程序上改的测试程序(用来测试这2个封装函数)END AES - 在tiny-AES-c基础上封装了2个应用函数(加密/解密) 概述 在github山有个星数很高的AES的C库 tiny-AES-c …...
51和32单片机读取FSR薄膜压力传感器压力变化
文章目录 简介线性电压转换模块51单片机读取DO接线方式51代码实验效果 32单片机读取AO接线方式32代码实验效果 总结 简介 FSR薄膜压力传感器是可以将压力变化转换为电阻变化的一种传感器,单片机可以读取然后作为粗略测量压力(仅提供压力变化,…...
【maven】pom.xml 文件详解
有关 maven 其他配置讲解参考 maven 配置文件 setting.xml 详解 pom.xml 文件是 Maven 项目的核心配置文件,其中包含了项目的元数据、构建配置、依赖管理等信息。以下是一个 pom.xml 文件的主要部分: <?xml version"1.0" encoding"U…...
SpringMVC源码解析——DispatcherServlet初始化
在Spring中,ContextLoaderListener只是辅助功能,用于创建WebApplicationContext类型的实例,而真正的逻辑实现其实是在DispatcherServlet中进行的,DispatcherServlet是实现Servlet接口的实现类。Servlet是一个JAVA编写的程序&#…...
搞定Apache Superset
踩雷了无数次终于解决了Superset的一系列问题 现在是北京时间2023年12月27日,亲测有效。 Superset概述 Apache Superset是一个现代的数据探索和可视化平台。它功能强大且十分易用,可对接各种数据源,包括很多现代的大数据分析引擎ÿ…...
【每日试题】java面试之ssm框架
以下是20道常见的SSM(SpringSpring MVCMyBatis)面试题目和答案: 什么是SSM框架? SSM是指SpringSpring MVCMyBatis的组合,它是Java Web开发中常用的轻量级框架集合。 介绍一下SSM框架各个组件的作用? Sprin…...
Flutter 疑难杂症集合
一. Flutter集成uni小程序sdk 1. 手机连接电脑测试打开uni小程序没问题,打包成apk后debug编译下的apk也没问题,但就是release编译的apk包打不开小程序。 报错情景:点击后页面会闪现一下黑色的背景,然后又跳转回了点击之前的页面。…...
PHP序列化总结1--序列化和反序列化的基础知识
序列化和反序列化的作用 1.序列化:将对象转化成数组或者字符串的形式 2.反序列化:将数组或字符串的形式转化为对象 为什么要进行序列化 这种数据形式中间会有很多空格,不同人有不同的书写情况,可能还会出现换行的情况 为此为了…...
【Linux】 last 命令使用
last 命令 用于检索和展示系统中用户的登录信息。它从/var/log/wtmp文件中读取记录,并将登录信息按时间顺序列出。 著者 Miquel van Smoorenburg 语法 last [-R] [-num] [ -n num ] [-adiox] [ -f file ] [name...] [tty...]last 命令 -Linux手册页 选项及作用…...
Git 分布式版本控制系统(序章1)
第一章 Git 分布式版本控制系统 为什么学Git? 某些企业面试需要掌握Git,同时,也方便管理自己的Qt项目。 一、Git 客户端下载(Windows) 下载地址 https://gitee.com/all-about-git#git-%E5%A4%A7%E5%85%A8 二、Git 的特点 分支…...
给WordPress网站添加返回顶部按钮
给WordPress网站底部添加一个按钮,点它就可以现实快速返回到顶部。有两种方法可以现实,一种是通过安装相关插件来实现。另外一种方式就是以纯属代码的方式来实现。 给WordPress网站底部添加一个按钮,点它就可以现实快速返回到顶部。有两种方…...
App Inventor 2 接入短信服务,实现短信验证码功能
发送短信验证码功能一般都是基于短信平台提供的sdk进行调用,这里是基于阿里云短信平台进行的开发,阿里云短信平台接入步骤请点此参考。 App Inventor 2拓展提供的函数如下: 主要提供2个函数,生成随机位数的数字随机码 和 发送短信…...
Linux环境grep搜索方法记录
1 grep grep 命令,用来搜索字符串所在位置,可以具体到不同文件,不同行; 在Linux 下,查看命令释义如下 zhaocubuntu2004:~$ grep --help Usage: grep [OPTION]... PATTERNS [FILE]... Search for PATTERNS in each FI…...
C语言-破解密码
题目描述 密码是我们生活中非常重要的东东,我们的那么一点不能说的秘密就全靠它了。哇哈哈. 接下来渊子要在密码之上再加一套密码,虽然简单但也安全。 假设老王原来一个BBS上的密码为zvbo941987,为了方便记忆,他通过一种算法把这个密码变换…...
第19节 Node.js Express 框架
Express 是一个为Node.js设计的web开发框架,它基于nodejs平台。 Express 简介 Express是一个简洁而灵活的node.js Web应用框架, 提供了一系列强大特性帮助你创建各种Web应用,和丰富的HTTP工具。 使用Express可以快速地搭建一个完整功能的网站。 Expre…...
基于大模型的 UI 自动化系统
基于大模型的 UI 自动化系统 下面是一个完整的 Python 系统,利用大模型实现智能 UI 自动化,结合计算机视觉和自然语言处理技术,实现"看屏操作"的能力。 系统架构设计 #mermaid-svg-2gn2GRvh5WCP2ktF {font-family:"trebuchet ms",verdana,arial,sans-…...
【人工智能】神经网络的优化器optimizer(二):Adagrad自适应学习率优化器
一.自适应梯度算法Adagrad概述 Adagrad(Adaptive Gradient Algorithm)是一种自适应学习率的优化算法,由Duchi等人在2011年提出。其核心思想是针对不同参数自动调整学习率,适合处理稀疏数据和不同参数梯度差异较大的场景。Adagrad通…...
【2025年】解决Burpsuite抓不到https包的问题
环境:windows11 burpsuite:2025.5 在抓取https网站时,burpsuite抓取不到https数据包,只显示: 解决该问题只需如下三个步骤: 1、浏览器中访问 http://burp 2、下载 CA certificate 证书 3、在设置--隐私与安全--…...
vue3 定时器-定义全局方法 vue+ts
1.创建ts文件 路径:src/utils/timer.ts 完整代码: import { onUnmounted } from vuetype TimerCallback (...args: any[]) > voidexport function useGlobalTimer() {const timers: Map<number, NodeJS.Timeout> new Map()// 创建定时器con…...
宇树科技,改名了!
提到国内具身智能和机器人领域的代表企业,那宇树科技(Unitree)必须名列其榜。 最近,宇树科技的一项新变动消息在业界引发了不少关注和讨论,即: 宇树向其合作伙伴发布了一封公司名称变更函称,因…...
Golang——7、包与接口详解
包与接口详解 1、Golang包详解1.1、Golang中包的定义和介绍1.2、Golang包管理工具go mod1.3、Golang中自定义包1.4、Golang中使用第三包1.5、init函数 2、接口详解2.1、接口的定义2.2、空接口2.3、类型断言2.4、结构体值接收者和指针接收者实现接口的区别2.5、一个结构体实现多…...
HTML前端开发:JavaScript 获取元素方法详解
作为前端开发者,高效获取 DOM 元素是必备技能。以下是 JS 中核心的获取元素方法,分为两大系列: 一、getElementBy... 系列 传统方法,直接通过 DOM 接口访问,返回动态集合(元素变化会实时更新)。…...
前端高频面试题2:浏览器/计算机网络
本专栏相关链接 前端高频面试题1:HTML/CSS 前端高频面试题2:浏览器/计算机网络 前端高频面试题3:JavaScript 1.什么是强缓存、协商缓存? 强缓存: 当浏览器请求资源时,首先检查本地缓存是否命中。如果命…...
向量几何的二元性:叉乘模长与内积投影的深层联系
在数学与物理的空间世界中,向量运算构成了理解几何结构的基石。叉乘(外积)与点积(内积)作为向量代数的两大支柱,表面上呈现出截然不同的几何意义与代数形式,却在深层次上揭示了向量间相互作用的…...

