Linux修炼之路之权限

目录

 引言

一:Linux中用户的分类

二:在Linux中的权限

1.权限的两种属性

1.人的属性

2.事物属性 -主要以文件属性为主

3.文件权限值的两种表示方式方法 

2.更改文件访问者(拥有者,所属组,其他人)权限属性 

3.更改文件的拥有者和所属组 

4.目录和文件的起始权限问题 

5.目录权限相关内容

接下来的日子会顺顺利利,万事胜意,生活明朗-----------林辞忧

 引言

在日常中我们也会经常提及权限这个问题,权限这个词简单来说就是去做一件事是否被允许,接下来将介绍Linux中关于权限的问题

一:Linux中用户的分类

1.root 超级用户 和  普通用户

2.root用户基本不受权限的约束,而普通用户是要受权限的约束的;root用户的命令行提示符是#,普通用户的则是$

3.相互之间的切换指令

4.对一条指令暂时的进行提权(以root的方式运行) ,如果当前是普通用户的情况下,我们可以使用sudo 要提权的指令  来操作,但对于用adduser的方式新建的用户,是没有办法执行sudo,系统是不信任的,后面可以将介绍可以将其添加到系统的信任白名单里面

二:在Linux中的权限

1.权限的两种属性

一是人的属性,即权限认证的是身份(角色) ;二是事物的属性

1.人的属性

在Linux中文件访问者(角色)的分类: 拥有者  所属组   其他人 

与具体的root用户和普通用户的联系是:拥有者可以是root用户或者普通用户,所属组和其他人也如此

2.事物属性 -主要以文件属性为主

1.文件的属性是分为:可读,可写,可执行

2.关于文件属性每个数据的介绍

3.文件权限值的两种表示方式方法 

2.更改文件访问者(拥有者,所属组,其他人)权限属性 

第一种方式:

chmod u+w  文件名      :给文件的拥有者添加可写属性

chmod  u+rw 文件名   给文件的拥有者添加可写可读属性

chmod  u+rwx 文件名   给文件的拥有者添加可写可读可修改属性

chmod  u-rw 文件名   给文件的拥有者去掉可写可读属性

chmod  g-rw 文件名   给文件的所属组去掉可写可读属性

chmod  o-rw 文件名   给文件的其他人去掉可写可读属性

chmod  u-rwx,g+rw,u-rw 文件名      ....

chmod  a-rw 文件名   给文件的所有人去掉可写可读属性  

....

第二种方式:使用8进制数值表示方式(每个8进制数看作对应文件访问者的权限属性)

chmod 777 文件名   :给文件的所有人添加可读可写可执行属性 

chmod 000   文件名  给文件的所有人去掉可读可写可执行属性

....

3.更改文件的拥有者和所属组 

暂时在root下修改

更改拥有者:         chown 用户名   文件名

更改所属组:          chgrp  用户名  文件名

同时更改拥有者和所属组 :    chown   用户名:用户名  文件名

4.目录和文件的起始权限问题 

在每次创建新的文件或目录时,对应的权限8进制数值是一样的

新创建的普通文件的初始权限为664 ,目录为775 

但系统默认给普通文件的初始权限是666,给目录文件的初始权限是777,那为啥最后再创建出来后会有差异的,这其中就有权限掩码的参与

权限掩码:

1.查看权限掩码 umask(开头0代表8进制数,每个8进制数字表示每个文件访问者的权限)

2.规定:凡是在umask中出现的权限,是不会在最终的文件权限中出现的

3.更改权限掩码: umask 0+三个8进制数

4.文件或目录最终权限的计算 

文件或目录最终权限=系统给的默认权限& (~umask)

如:普通文件的最终权限的计算664 

目录文件的775同理 

也正是因为权限掩码的存在,才有了文件和目录创建时的权限

5.目录权限相关内容

1.关于目录文件的可读和可写可执行属性具体指:

r:  是否允许我们查看指定目录下的文件内容 如关于cat指令,有读的权限时,cat指令是允许执行的,反之不能执行

w: 是否允许我们在当前目录下进行创建,更改,删除     相关指令有echo,mv,rm等

x:是否允许用户进入对应的目录       相关指令有cd

2.普通用户自己的家目录的权限是700,即只有自己(拥有者)可见,别人都不能见

这时如果要多人共享文件的话,就不能在一个人的家目录下创建共享文件

而是在root根目录下可以建议一个临时目录,也可以直接使用tmp目录

这里的建立共享目录以自己新建的为例

 

 但如果mjw用户在共享目录下建立的文件,如果lfp用户要直接删除的话,也是允许的

这就似乎不合理了,这样的话在共享目录下建立的文件任何人都能删除了,更重要的是为啥自己建立的文件为啥别人也能删除?接着往下 

3.对于一个文件能否被删除,不是由文件本身决定,而是由这个文件所处的目录决定

在temp目录下建立的文件由于temp目录的其他人权限是rwx都有的,因此允许任何一个人删除文件

4.粘滞位:粘滞位的产生主要来解决由于共享文件而造成的可以互删共享文件问题,但对于这个问题如果只是简单的去掉共享目录的w权限的话(上面就是chmod o-w temp),也可以避免其他人删除自己文件的问题,但此时我们也就无法再创建文件这些了,所以产生了粘滞位来解决

粘滞位:给共享目录设置,这时我们就可以在目录下进行各自文件的增删查改和读他人的共享文件,但只允许文件拥有者/root用户来删除文件,也就是只能在共享目录下可以创建文件,但不能删除不属于自己创建的文件

 chmod o+t  共享目录名

t是一种特殊的可执行权限

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

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

FastAPI:Python打造高效API的终极武器

在Python的世界里,如果你想要一个既快速又现代的方式来构建API,那么FastAPI可能是你的首选。这个库基于Starlette(用于Web编程)和Pydantic(用于数据验证),专门为速度和易用性设计。 什么是FastA…

微信小程序Vue+uniapp餐饮美食订餐骑手配送系统9g60o

本小程序uniapp菜品帮采用Java语言和Mysql数据库进行设计,技术采用微信小程序,可以不安装App软件就实现订餐。本系统实现管理员和用户、商家、配送员四个角色的功能。用户主要在微信端操作,内容有菜品信息,用户可以在线点餐和管理…

能源管理系统中,倍讯科技Modbus TCP转CAN网关具体的连接方案

在能源管理系统中,使用倍讯科技Modbus TCP转CAN网关的连接方案通常涉及以下几个步骤: 1. 设备调研与规划: 首先,需要了解能源管理系统中所涉及的各种设备和传感器,以及它们所使用的通信协议和接口类型。 确定需要连接…

使用System.Drawing进行几何图形绘制

1.概要 使用System.Drawing进行几何图形绘制 System.Drawing 是.NET框架中的一个命名空间,提供了基本的绘图功能,包括绘制几何图形(如矩形、椭圆、线条等)。它通常用于Windows Forms应用程序中的绘图。你可以使用 Graphics 类来…

上位机图像处理和嵌入式模块部署(树莓派4b 应用的注意事项)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing 163.com】 树莓派系列开发板最早的时候,价格还是比较高的。不过由于它生态比较丰富,使用起来比较方便,所以大家都默认了它…

MPLAB X IDE编译attiny1616工程报错却无报错信息

MPLAB X IDE(XC-8编译器)编译报错,无具体错误内容,仅显示需要xc-8 pro的警告。 内存占用率显示为81%,未超标。 原因:软件使用了microchip的bootloader功能。应用程序起始地址(也是bootloader结束地址)设置错…

Debian常用命令:高效管理与运维的必备指南

在Linux世界中,Debian以其稳定性、安全性和开源精神赢得了广大用户的青睐。作为一个基于Linux的操作系统,Debian拥有丰富且强大的命令行工具,这些命令对于系统管理员和开发者来说至关重要。本文将为您介绍一系列Debian系统中的常用命令&#…

590.N叉树的后序遍历

刷算法题: 第一遍:1.看5分钟,没思路看题解 2.通过题解改进自己的解法,并且要写每行的注释以及自己的思路。 3.思考自己做到了题解的哪一步,下次怎么才能做对(总结方法) 4.整理到自己的自媒体平台。 5.再刷重复的类…

jmeter报错:class‘org.apache.jmeter.threads.JMeterVariables‘

最近项目被爬虫盯上了,导致生产环境崩溃了几次,又开始哼哧哼哧做压测,性能调优。totalPrices 是一个价格数组,以下这种格式的: {“USD”:2049.01,“CNY”:110} 一开始是下面这种写法,直接把这个JSONObject类型的放到va…

win server服务器 关闭危险端口 135,137,138,139,445的方法

通过防火墙来控制 打开控制面板 选择检查防火墙状态 选择高级设置 选择入站规则,再新建规则 选择端口,下一步 选择端口应用于啥协议,再指定端口,再下一步 选择阻止连接,下一步 下一步 给规则别名一下,方便…

JVM 类的加载过程详解

文章目录 1. 哪些类需要加载2. 类加载步骤2.1 装载2.1.1 这个过程都做了什么事2.1.2 类的模板对象2.1.3 二进制流获取方式2.1.4 Class 实例的位置2.1.5 数组类的加载有什么不同 2.2 链接2.2.1 验证2.2.2 准备2.2.3 解析 2.3 初始化 1. 哪些类需要加载 在 Java 中数据类型分为 …

Python 运筹优化12 eps greedy 解读

说明 Epsilon-Greedy(ε-Greedy)是一种用于解决多臂LH机问题(Multi-Armed Bandit Problem)的策略,通常在强化学习中使用。在多臂LH机问题中,有多个选项(臂),每个选项都有…

ICode国际青少年编程竞赛- Python-6级训练场-递归入门

ICode国际青少年编程竞赛- Python-6级训练场-递归入门 1、 def recur(n):# 边界条件if n<1:return# 额外动作Dev.step(n)Dev.turnRight()# 递归调用recur(n-1)recur(8)2、 def recur(n):# 边界条件if n<1:return# 额外动作Dev.step(n)Dev.turnLeft()# 递归调用recur(n-1)…

CST电磁仿真的查看2D/3D结果和查看端口模式【基础教学】

查看2D/3D结果 场结果的定制化显示&#xff01; Navigation Tree > 2D/3D Results 当我们使用CST软件时&#xff0c;可以在Field Monitor中设置好需要查看的频点后运行仿真&#xff0c;仿真完成后就可以在NavigationTree中确认场结果。可以有多种类型的绘图展示仿真分析得…

第14节 第二种shellcode编写实战(3)

我最近在做一个关于shellcode入门和开发的专题课&#x1f469;&#x1f3fb;‍&#x1f4bb;&#xff0c;主要面向对网络安全技术感兴趣的小伙伴。这是视频版内容对应的文字版材料&#xff0c;内容里面的每一个环境我都亲自测试实操过的记录&#xff0c;有需要的小伙伴可以参考…

探索数字社交的奇迹:解读Facebook的革命性影响

1. 社交互动的全新模式 Facebook的出现不仅仅是一个社交媒体平台的诞生&#xff0c;更是一种全新的社交互动模式的开启。传统的社交模式主要依赖于面对面的交流&#xff0c;而Facebook则将社交推向了全新的数字化平台&#xff0c;使得人们可以在虚拟的世界里建立和维系社交关系…

sql注入---sqli靶场

1.什么是SQL注入 SQL注入是比较常见的网络攻击方式之一&#xff0c;它不是利用操作系统的BUG来实现攻击&#xff0c;而是针对程序员编写时的疏忽&#xff0c;通过SQL语句&#xff0c;实现无账号登录&#xff0c;甚至篡改数据库 2.sql注入原理 攻击者注入一段包含注释符的SQL语…

AI大模型探索之路-训练篇22: ChatGLM3微调实战-从原理到应用的LoRA技术全解

系列篇章&#x1f4a5; AI大模型探索之路-训练篇1&#xff1a;大语言模型微调基础认知 AI大模型探索之路-训练篇2&#xff1a;大语言模型预训练基础认知 AI大模型探索之路-训练篇3&#xff1a;大语言模型全景解读 AI大模型探索之路-训练篇4&#xff1a;大语言模型训练数据集概…

【CSP CCF记录】202109-2 非零段划分

题目 过程 思路 参考&#xff1a;http://t.csdnimg.cn/XRKTm STL库用法 unique用法 unique是STL中很实用的函数之一&#xff0c;需要#include&#xff08;感谢各位提醒&#xff09;&#xff0c;下面来简单介绍一下它的作用。 unique的作用是“去掉”容器中相邻元素的重复…

【Qt】之【CMake】Error : The source.. does not match the soused

QT中cmak编译出现CMake Error: The source… does not match the soused 分析 前提是该项目是从另一个路径的项目复制过来的&#xff0c;编写代码时发现无论怎样修改代码&#xff0c;运行后都没有任何变化&#xff0c;以为是qtbug&#xff0c;重构重启都没用&#xff0c;最后…