4000字超详解Linux权限

各位大佬好 ,这里是阿川的博客 , 祝您变得更强

在这里插入图片描述 个人主页:在线OJ的阿川

大佬的支持和鼓励,将是我成长路上最大的动力 在这里插入图片描述

阿川水平有限,如有错误,欢迎大佬指正 在这里插入图片描述

在这里插入图片描述
在Linux当中权限的体现主要有两种

普通用户
超级用户root

首先我们讲一下,当是普通用户时,怎么变成超级用户,直接在Linux当中输入su 或者su -
在这里插入图片描述
但如果我要变成普通用户呢?
分两种情况:

当我是超级用户的情况下,变成普通用户
当我是普通用户的情况下,变成其他普通用户

在这里插入图片描述
所以什么是权限呢?

  • 1.权限认证的是身份,允许你是否能做这件事情
  • 2.权限也和事物的属性有关

对于权限也和事物的属性有关,我们举个比喻说说:文件它本身的属性就是用来查看、修改信息等等,你不能说把它当成一个面包来啃一口,因为它不具有面包的属性,所以也就不能够干啃一口这件事情,也就没有这样的权限。因为它本身不具有啃一口这种属性
这里提到了文件,那我们就讲讲Linux当中的文件有关事项:
Linux系统中文件名后缀****没有直接意义(不是没有意义,是没有直接意义,是指其Linux上的gcc编译器不看后缀,但Linux上的其他软件有可能要认哦)
那我怎么看文件的类型呢?以及文件有哪些类型呢?
文件的类型有:

  • -普通文件(常用)
  • d 目录文件(常用)
  • b 块设备文件(磁盘文件)
  • c 字符设备文件(键盘、显示器文件等)
  • p 管道文件(fifo)

对于后三种文件,我们用Linux具体讲讲
在这里插入图片描述
那后面那些文件属性分别代表什么意思呢?
引入一个概念:
在这里插入图片描述
超级用户和普通用户可以拥有三种角色.
那接下来这些文件属性就能解释的通了.
在这里插入图片描述
这里详细讲讲三个一组的意思:
先普及一个概念:

r 表示可读
w 表示可写
x 表示可执行
-没有权限

好的,可以详细讲讲接下来的内容了
在这里插入图片描述
这里相信我们能看到,根据不同属性的文件系统所给的权限竟然有不同,这是为什么?
这里是因为系统默认给:

  • 1.给普通文件起始权限为666
  • 2.给目录文件起始权限为777

怪了?不是在说r、w 、x 、-,怎么666和777出来了,是什么意思呀?
我来解释一下:
若我对第1个角色即拥有者,给予的权限为rw-,表示有读写的权限没有执行的权限,则有权限的我们值为1没有权限的值为0。至于为什么不为其他,因为这是计算机二进制的。则我们可以得到110来替代权限rw-,因为110是2进制替换成十进制(1x2的2次方+1×2的1次方+0x2的0次方),则为6。
哦,原来这就是六的由来。但为什么会666呢?因为一个6是指拥有者,而总共有3个角色哦。那777又是什么呢,7是指权限111即rwx.

注意:x执行保证的是否能够进入目录中,也就是进入的权限,如果连进入的权限都没有,那更何谈修改和读了。

不对啊,就例如这个
在这里插入图片描述
不是说普通文件默认666嘛,但这里为什么是664呀
不是说目录文件默认为777嘛,怎么这里为775呀
博主是不是乱讲?
不是的,这里要引入新的一个知识:
权限掩码umask,顾名思义,他把权限遮盖了一部分,凡是在umask中出现的权限不会最终在文件权限中出现(官方定义是:最终权限=起始权限& umask
在这里插入图片描述
但这里就又有一个疑问了,但如果我想对不同角色的权限进行不同的设置呢?
这里就要出现一个修改权限chmod 不同角色+/-不同权限
在这里插入图片描述

但是要注意:权限认证时,只会认证一个哦。
在这里插入图片描述

这里用的都是文件的权限,那目录的权限又是怎么样的呢?
目录权限相对于文件权限来说有点不一样**,只有拥有者拥有所有权限,其他人皆无任何权限**
在这里插入图片描述
但若在同一个服务器下,那如果有共同维护同一个文件的需求呢?
先由root用户对同一个文件的目录放开权限,可由其他普通用户共同维护.
在这里插入图片描述
但是注意在分享的过程中,有可能分享出来的一个人,不满足读的权限。要搞破坏可以删除你的文件
在这里插入图片描述
我们可以通过关掉目录权限的方法来规避.
一个文件能否被删除不由文件本身属性决定,而由目录权限决定.
但能不能在不关目录权限下保证其他人不会删除这个文件的呢?
chmod o+t shared 这样就行了,t叫做粘滞位专门给目录设置不允许互删文件只允许文件拥有者或者root账户能够删除这个文件,其他人一概不允许t是一种特殊的 x权限.
在这里插入图片描述
其实在根目录/下,自带一个粘滞位目录tmp可以短暂使用。
在这里插入图片描述

那我想修改文件拥有者和文件所属组可以吗?
可以的

  • 修改文件拥有者:chown
  • 修改文件所属组:chgrp
  • 两个一起改chown 拥有者 : 所属组
    在这里插入图片描述

好的,今天就到这里了,祝您变得更强!

道阻且长 行则将至

个人主页:在线OJ的阿川大佬的支持和鼓励,将是我成长路上最大的动力 在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

图片无损压缩工具-VIKY

一、前言 Viky v3.4是一款功能强大的图片压缩工具,它能够提供高效的图片无损压缩服务。通过使用独特的压缩算法,该软件在显著减小图片文件大小的同时,还保持了图像的清晰度和色彩饱和度,确保了图像质量的优异表现。 二、软件特点…

CAPL如何实现TLS握手认证

CAPL有专门的章节介绍如何实现TLS握手认证的函数: CAPL调用哪些函数实现TLS握手认证,需要了解TLS在整个通信过程的哪个阶段。 首先TCP需要建立连接,这是TLS握手的前提。当TLS握手认证完成后,可以传输数据。 所以TLS握手开始前需要确保TCP建立连接,TCP传输数据前需要确保…

泰迪科技2024中职大数据实训室方案解读

中职在大数据专业建设所遇到的困难 数据、信息安全、人工智能等新信息技术产业发展迅猛,人才极其匮乏,各个中职院校纷纷开设相应的专业方向。但是,绝大多数院校因为师资和积累问题,在专业建设规划、办学特色提炼、创新教学模…

Gradio 基础使用示例

文章目录 Gradio 基础使用示例简介安装示例-简单的输入、输出示例-启动配置示例-聊天对话示例-多页面Tab切换示例-使用Block自定义布局示例-Plot绘图示例-状态管理示例-提示、进度条参考 Gradio 基础使用示例 简介 Gradio 是一个用于构建快速原型和部署机器学习应用程序的开源…

wandb: - 0.000 MB of 0.011 MB uploaded持续出现的解决方案

大家好,我是爱编程的喵喵。双985硕士毕业,现担任全栈工程师一职,热衷于将数据思维应用到工作与生活中。从事机器学习以及相关的前后端开发工作。曾在阿里云、科大讯飞、CCF等比赛获得多次Top名次。现为CSDN博客专家、人工智能领域优质创作者。喜欢通过博客创作的方式对所学的…

【异常检测】新版异常检测库anomalib的使用

every blog every motto: There’s only one corner of the universe you can be sure of improving, and that’s your own self. https://blog.csdn.net/weixin_39190382?spm1010.2135.3001.5343 0. 前言 异常检测库anomalib的使用 1. 前提 1.1 数据组织形式 说明&#…

15 华三华为链路聚合综述

1 链路聚合简介 以太网链路聚合通过将多条以太网物理链路捆绑在一起形成一条以太网逻辑链路,实现增加链路带宽的目的,同时这些捆绑在一起的链路通过相互动态备份,可以有效地提高链路的可靠性。 2 成员端口的状态 聚合组内的成员端口具有以下…

Ps 滤镜:视频

Ps菜单:滤镜/视频 Filter/Video “视频”滤镜子菜单中包含了“NTSC 颜色”和“逐行”两个滤镜。 这两个滤镜都是针对视频和电视播放的特定需求设计的。 “逐行”滤镜主要解决交错视频的视觉问题,而“NTSC 颜色”滤镜则确保色彩在电视播放时的兼容性和准确…

Java设计模式 _结构型模式_享元模式

一、享元模式 1、享元模式 享元模式(Flyweight Pattern)是一种结构型模式。主要用于减少创建对象的数量,以减少内存占用和提高性能。主要解决有大量对象时,有可能会造成内存溢出,我们把其中共同的部分抽象出来&#x…

django中的日志处理

1、事件追踪 在什么样的时间发生了什么样的事情 2、bug调试 3、程序告警 4、大数据统计 ELK 日志分析系统 elasticsearh logstasn kibana 名词概念 loggers:日志器 —— 定大方向:1 handlers:处理器 —— 执行:3 formatters&#xff…

【C++】详细版 RAII技术的应用之智能指针(智能指针发展历程和简单模拟实现介绍)

目录 前言 一、智能指针有什么用? 二、什么是RAII(智能指针的底层思想)? 三、智能指针的发展历程以及模拟实现 1.auto_ptr(C98) 2.unique_ptr(C11) 3.shared_ptr(C11) 前言 C中…

【vulhub靶场】Apache 中间件漏洞复现

【vulhub靶场】Apache 中间件漏洞复现 一、Apache HTTPD 换行解析漏洞(CVE-2017-15715)1. 漏洞详情2. 影响版本3. 漏洞复现 二、Apache多后缀解析漏洞(apache_parsing_vulnerability)1. 漏洞详情2. 漏洞复现 三、Apache HTTP Serv…

【Python爬虫实战入门】:教你一个程序实现PPT模版自由

文章目录 💥一、PPT模版爬取🔥1.1 第一个爬虫🚲1. 获取下载页面链接 ❤️1.2 第二个爬虫🚲1.3 第三个爬虫🎈2. 文件保存 ❤️1.4 翻页处理 🔥二、完整代码 🔥🔥🔥 Pytho…

【Linux】简易进度条的实现

🎉博主首页: 有趣的中国人 🎉专栏首页: Linux 🎉其它专栏: C初阶 | C进阶 | 初阶数据结构 小伙伴们大家好,本片文章将会讲解Linux中进度条的实现的相关内容。 如果看到最后您觉得这篇文章写得…

深度学习论文: LightGlue: Local Feature Matching at Light Speed

深度学习论文: LightGlue: Local Feature Matching at Light Speed LightGlue: Local Feature Matching at Light Speed PDF: https://arxiv.org/pdf/2306.13643 PyTorch代码: https://github.com/shanglianlm0525/CvPytorch PyTorch代码: https://github.com/shanglianlm0525/…

AI算法-高数2-导数定义和公式

P14 2.1 导数的定义(一):2.1 导数的定义_哔哩哔哩_bilibili 导数定义: 导数公式: P15 2.1 导数的定义(二):2.1 导数的定义(二)_哔哩哔哩_bilibili [a,b]可导,a的端点:右可导,b端点&…

Leetcode—138. 随机链表的复制【中等】(cend函数)

2024每日刷题(129) Leetcode—138. 随机链表的复制 实现代码 /* // Definition for a Node. class Node { public:int val;Node* next;Node* random;Node(int _val) {val _val;next NULL;random NULL;} }; */class Solution { public:Node* copyRan…

Spring JdbcTemplate使用临时表+事务会话管理实现数据新增、查询及自动清除功能

需求描述: 由于某些情况下当查询过滤参数过大时,执行sql由于参数过大而报错,此时 需要使用临时表的方式,即 当参数超过某个阀值(如 1000,可调整)新增一张临时表,将原表 与 该临时表进…

代码随想录算法训练营第六十二天|503.下一个更大元素II、42.接雨水

代码随想录算法训练营第六十二天|503.下一个更大元素II、42.接雨水 503.下一个更大元素II 给定一个循环数组 nums ( nums[nums.length - 1] 的下一个元素是 nums[0] ),返回 nums 中每个元素的 下一个更大元素 。 数字 x 的 下一个更大的元…

第十一篇:操作系统新纪元:智能融合、量子跃迁与虚拟现实的交响曲

操作系统新纪元:智能融合、量子跃迁与虚拟现实的交响曲 1 引言 在数字化的浪潮中,操作系统如同一位智慧的舵手,引领着信息技术的航船穿越波涛汹涌的海洋。随着人工智能、物联网、量子计算等前沿技术的蓬勃发展,操作系统正站在一个…