Lunix的奇妙冒险————权限篇

文章目录

  • 一.什么是权限
  • 二.用户权限和类别。
    • 1.用户
    • 2.角色
    • 3.更换文件角色
  • 三.文件的类别和对应权限
    • 1.文件的类别。
    • 2.文件属性权限
      • 1.权限说明。
      • 2.默认生成文件权限来源
      • 3.更改权限
    • 3.文件的执行与删除
  • 四.不同用户共同在一个目录下的权限。
    • 1.普通用户家目录
    • 2.在同一目录下文件的权限
      • 1.读权限
      • 2.写权限
      • 3.执行权
      • 4.是否可以删除

一.什么是权限

Linux权限是一种用于控制文件和目录访问的机制,它决定了用户对文件和目录的读取、写入和执行权限。Linux权限系统基于文件所有者、所属组和其他用户的身份,分为读取(r)、写入(w)和执行(x)权限。通过设置文件的权限,可以限制用户对文件的访问和操作,从而保护系统的安全性和稳定性。
包括人员权限和文件权限。

二.用户权限和类别。

1.用户

在Linux系统中,用户可以分为以下几类:

1.超级用户(root):拥有系统上所有权限的特殊用户,可以对系统进行完全控制。

2.系统用户:用于运行系统服务或进程的特定用户,通常不允许登录系统。

3.普通用户:一般系统用户,可以登录系统并执行一定范围的操作,但权限受到一定限制。

4.管理员用户:具有某些特定权限,例如可以执行系统管理任务或安装软件的用户。

其中平时我们最常见的用户为超级用户root和普通用户。
超级用户于普通用户可以用su指令进行转换。
在这里插入图片描述

2.角色

在Linux中有三类角色,分别为拥有者(owner)所属组(group)其他人(other)

1.拥有者(owner):指文件或目录的创建者,拥有者对文件或目录有特定的权限控制,包括读取(r)、写入(w)和执行(x)权限。

2.所属组(group):指文件或目录所属的用户组,用户组是一组用户的集合,拥有相同的权限。文件或目录的所属组也有特定的权限控制,包括读取(r)、写入(w)和执行(x)权限。

3.其他(others):指除拥有者和所属组之外的其他用户,其他用户对文件或目录的访问权限也可以通过设置来控制,包括读取(r)、写入(w)和执行(x)权限。

在Linux系统中,文件首先识别拥有者(owner)的身份。根据文件的拥有者身份,系统会根据其拥有的权限设置来决定文件的访问权限。如果用户是文件的拥有者,系统将首先检查该用户的权限设置,然后再考虑所属组和其他用户的权限设置。因此,文件的拥有者在访问文件时拥有最高的权限。
值得注意的是一旦识别出一类身份,就不会再识别其他的身份了

3.更换文件角色

一个文件第一使用者为拥有者,然后是所属组

drwxr-xr-x 2 root root 4096 Dec 26 22:32 new2.dir

这个文件的拥有者为root,所属组为root
通过chownchgrp指令修改
在这里插入图片描述
这样该目录的拥有者和所属组都被修改了。

三.文件的类别和对应权限

1.文件的类别。

在Linux系统中,文件的类别主要分为以下几种:

1.普通文件(Regular Files):这是最常见的文件类型,包括文本文件、二进制可执行文件等。

2.目录文件(Directory Files):用于存储其他文件和目录的文件类型。目录文件中包含了指向其他文件和目录的链接。

3.设备文件(Device Files):Linux将设备抽象为文件,设备文件分为块设备文件和字符设备文件,用于访问硬件设备。

4.符号链接文件(Symbolic Link Files):也称为软链接,它是指向另一个文件的链接。

5.套接字文件(Socket Files):用于进程间通信的特殊文件类型。

6.管道文件(Named Pipes):也称为FIFO,用于进程间通信的一种特殊文件类型。

初学者通常接触到的就是1,2类文件。

2.文件属性权限

1.权限说明。

  • 文件的权限通常有三种:

    1. r ,读
    2. w,写
    3. x,可执行
drwxr-xr-x 2 root root 4096 Dec 26 22:32 new2.dir
-rw-r--r-- 1 root root   69 Dec 26 22:20 test.c

这是一个目录文件和普通文件
目录文件:d代表目录,rwx r-x r-x 三三一组分别对应拥有者(owner)所属组(group)其他人(other)
除了第一个字符代表文件类型,其余字符皆反应文件权限,其中owner对应权限最全。
-代表未拥有权限
在这里插入图片描述

2.默认生成文件权限来源

这里引入掩码概念
Linux掩码是一种权限掩码,用于控制文件和目录的访问权限。它由三组三位数字组成,分别表示文件所有者、文件所属组和其他用户的权限。
掩码是一个八进制序列

[root@iZf8zbc41kduw4qa52iammZ ~]# umask
0022

0是表示八进制,后面三位分别对应拥有者(owner)所属组(group)其他人(other)
反过来对应权限九个字符的二进制序列
例如:
rwx对应二进制111,对应八进制7
r-x对应二进制101,对应八进制5

Linux中默认目录文件权限为0777,普通文件0666
再将掩码取反后与默认权限按位与操作便得到了真正权限。

drwxr-xr-x 2 root root 4096 Dec 26 22:32 new2.dir

将该目录文件计算可得:
在这里插入图片描述

-rw-r--r-- 1 root root   69 Dec 26 22:20 test.c

普通文件计算如下:
在这里插入图片描述

3.更改权限

如何更改文件权限呢?我们需要用到chmod指令

  • 修改拥有者权限
# chmod u-x test.c

u +/- 所对应权限
在这里插入图片描述
给拥有者取消了执行权限,注意到test.c的高亮没有了

  • 修改所属组权限
    g +/- 所对应权限
# chmod g+wx test.c

在这里插入图片描述

  • 其他修改权限
    o +/- 所对应权限
# chmod o+wx test.c

在这里插入图片描述
注意修改过程可以批量修改
在这里插入图片描述

  • 一件添加
# chmod a+r test.c

在这里插入图片描述
也可以通过八进制序列添加

# chmod 000 test.c

在这里插入图片描述

3.文件的执行与删除

文件的执行关系指的是用户对文件的执行操作与文件本身的关系。当用户执行一个文件时,操作系统会根据文件的权限和用户的身份来决定是否允许执行。如果用户拥有执行权限,并且文件是可执行文件,那么用户就可以执行该文件。否则,用户将无法执行该文件。

总之,Linux 文件的执行权限和执行关系是指用户对文件是否具有执行操作的权限,以及用户是否能够执行该文件的关系。这些权限和关系对于系统的安全性和文件的可执行性非常重要。

能执行=具有x执行权限+执行者的关系

所以目录默认给定x权限,可以让用户直接访问
当有权限时:
在这里插入图片描述
当无权限时:
在这里插入图片描述
去掉x权限时,作为普通用户无法查看访问

四.不同用户共同在一个目录下的权限。

1.普通用户家目录

  • 一般情况下,普通用户是不能在 /root 目录下创建目录或者进行其他操作的。这是因为 /root 目录是超级用户(root用户)的家目录,普通用户没有权限在这个目录下进行任何操作。只有超级用户(root用户)才有对 /root 目录的完全控制权限。
    在这里插入图片描述

如果普通用户需要在系统中创建目录,他们通常应该在自己的家目录或者其他有相应权限的目录下进行操作。
当然超管无所畏惧
在这里插入图片描述

2.在同一目录下文件的权限

[qiangsir@iZf8zbc41kduw4qa52iammZ tem.dir]$ touch qiangsir.111 qiangsir.222[qiangsir@iZf8zbc41kduw4qa52iammZ tem.dir]$ ll
total 0
-rw-rw-r-- 1 qiangsir qiangsir 0 Dec 29 10:24 qiangsir.111
-rw-rw-r-- 1 qiangsir qiangsir 0 Dec 29 10:24 qiangsir.222
[qiangsir@iZf8zbc41kduw4qa52iammZ tem.dir]$ 

[root@iZf8zbc41kduw4qa52iammZ tem.dir]# touch root.111 root.222
[root@iZf8zbc41kduw4qa52iammZ tem.dir]# ll
total 0
-rw-rw-r-- 1 qiangsir qiangsir 0 Dec 29 10:24 qiangsir.111
-rw-rw-r-- 1 qiangsir qiangsir 0 Dec 29 10:24 qiangsir.222
-rw-r--r-- 1 root     root     0 Dec 29 10:25 root.111
-rw-r--r-- 1 root     root     0 Dec 29 10:25 root.222
[root@iZf8zbc41kduw4qa52iammZ tem.dir]# 

1.读权限

[root@iZf8zbc41kduw4qa52iammZ tem.dir]# echo "hello Linux" > root.111
[root@iZf8zbc41kduw4qa52iammZ tem.dir]# cat root.111
hello Linux

由于other具有r权限且在qiangsir创建的目录下,所以读没有问题
在这里插入图片描述

2.写权限

没有w权限,显然不能动用root的文件

[qiangsir@iZf8zbc41kduw4qa52iammZ tem.dir]$ echo "hehe" >root.111
bash: root.111: Permission denied

给o+w试试

[root@iZf8zbc41kduw4qa52iammZ tem.dir]# chmod o+w root.111
[qiangsir@iZf8zbc41kduw4qa52iammZ tem.dir]$ echo "hehe" > root.111
[qiangsir@iZf8zbc41kduw4qa52iammZ tem.dir]$ cat root.111
hehe

3.执行权

当创建一个可执行文件a.out,默认三种角色都有执行权
在这里插入图片描述

4.是否可以删除

在这里插入图片描述
超管可以删qiangsir的文件
那么qiangsir可以删超管的文件吗?答案是肯定的。
在这里插入图片描述
原因是这是qiangsir 的目录,所以有对文件的生杀大权。

今天的知识就分享到这里,往期精彩:
Linux的奇妙冒险———指令篇第一曲
Linux的奇妙冒险———指令篇第二曲
在这里插入图片描述

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

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

相关文章

springcloud中使用openfeign来优化接口调用

简单介绍在springcloud中使用openfeign来优化接口调用 目录 一、引入依赖二、为服务提供者编写openfeign接口三、服务消费者调用定义的openfeign接口四、项目结构五、日志级别配置1、通过配置类进行全局配置2、通过配置类进行局部配置3、通过配置文件配置 一、引入依赖 <!-…

工业信息采集平台 软件界面介绍

关键字&#xff1a;蓝鹏测控典型界面,蓝鹏测控交互界面,蓝鹏测控图形界面,蓝鹏测控历史界面,蓝鹏测控自定义界面 软件测控平台对UI程序界面&#xff0c;实现形式没有要求&#xff0c;也就是说&#xff0c;客户可以根据自己的需要设计任何样式的交互界面。 &#xff08;1&…

大数据前馈神经网络解密:深入理解人工智能的基石

文章目录 大数据前馈神经网络解密&#xff1a;深入理解人工智能的基石一、前馈神经网络概述什么是前馈神经网络前馈神经网络的工作原理应用场景及优缺点 二、前馈神经网络的基本结构输入层、隐藏层和输出层激活函数的选择与作用网络权重和偏置 三、前馈神经网络的训练方法损失函…

突破PHP disable_functions方法

1. 利用 LD_PRELOAD 环境变量 知识扫盲 LD_PRELOAD&#xff1a;是Linux系统的一个环境变量&#xff0c;它指定的*.so文件会在程序本身的*.so文件之前被加载。putenv()&#xff1a;PHP函数&#xff0c;可以设置环境变量mail()&#xff0c;error_log()&#xff1a;PHP函数&…

ERROR: No matching distribution found for torch==2.0.1解决方案

大家好&#xff0c;我是水滴~~ 本文主要介绍在安装 stable-diffusion-webui 时出现的 ERROR: No matching distribution found for torch2.0.1 问题的解决方案&#xff0c;希望能对你有所帮助。 《Python入门核心技术》专栏总目录・点这里 文章目录 问题描述解决方案离线安装 …

基于ssm潍坊理工学院就业信息网的设计与实现论文

摘 要 现代经济快节奏发展以及不断完善升级的信息化技术&#xff0c;让传统数据信息的管理升级为软件存储&#xff0c;归纳&#xff0c;集中处理数据信息的管理方式。本潍坊理工学院就业信息网就是在这样的大环境下诞生&#xff0c;其可以帮助管理者在短时间内处理完毕庞大的数…

VSCode安装Go环境

VSCode安装Go 1.点击Go官网&#xff0c;根据自己环境下载go安装包&#xff0c;我这里为Windows 2.双击安装包&#xff0c;一直点击【Next】即可 VSCode配置Go基础环境 1.创建Go的工作目录: C:\Code\GoCode 2.创建Go的环境变量: GOPATH (1)右键【此电脑】&#xff0c;点击…

什么是骨传导耳机?骨传导能保护听力吗?

骨传导耳机是一种非常特殊的蓝牙耳机&#xff0c;它通过骨传导技术将声音直接传送到内耳。这种技术不同于传统耳机&#xff0c;它不通过空气传送声音&#xff0c;而是通过头骨的振动来传送声音。 并且骨传导耳机能够在一定程度上起到保护听力的作用&#xff0c;主要是因为它们不…

春款来啦~我先冲了

这款假两件设计的连帽风衣外套 宽松版型对身材包容性很强&#xff0c;韩系慵懒风颜色很舒服 时尚百搭怎么穿都好看系列 做了腰部可调节抽绳&#xff0c;想要修身一点的可以自己调节哈 袖口处也做了金属按扣调节&#xff0c;防风保暖 这件风衣也很好搭配&#xff0c;很经典…

PICKIT3下载器脱机烧写指导书

一&#xff0c; PICKIT3的联机烧写方法 PICKIT3的联机烧写与ICD2一致&#xff0c;只是需要在MPLAB IDEV840或者更高版本下使用PICKIT3。烧写时&#xff0c;从MPLAB IDE的菜单“PROGRAMMER——PICKIT3”&#xff0c;选中PICKIT3即可。 由于PICKIT3能提供的烧写电流比较小&#…

微软CEO纳德拉当选2023年度CEO,AI大模型崛起成重要趋势;Mixtral 8x7B 真的击败了 GPT 3.5 Turbo 吗?

&#x1f989; AI新闻 &#x1f680; 微软CEO纳德拉当选2023年度CEO&#xff0c;AI大模型崛起成重要趋势 摘要&#xff1a;2023年被认为是AI大模型崛起之年&#xff0c;微软CEO纳德拉凭借对AI的投资和领导力当选2023年度CEO。纳德拉将AI技术融入微软的产品和服务中&#xff0…

gin框架使用系列之四——json和protobuf的渲染

系列目录 《gin框架使用系列之一——快速启动和url分组》《gin框架使用系列之二——uri占位符和占位符变量的获取》《gin框架使用系列之三——获取表单数据》 上篇我们介绍了如何获取数据&#xff0c;本篇我们介绍一下如何返回固定格式的数据。 一、返回JSON数据 在web开发中…

Vue监听浏览器自带的复制事件并对复制内容进行修改

场景&#xff1a; 在使用鼠标右键或者ctrl c的时候。光标会自动换行。粘贴出来的数据光标应该在红色部分&#xff0c;却出现在了黑色部分。 方法一&#xff1a; html标签不要换行&#xff1b;css去除空格&#xff1b; white-space: nowrap;方法二&#xff1a; 使用函数对复…

请问仿写arkts摇杆功能,为什么我的代码,TouchType.Up 时候摇杆动画不能还原呢?请求大佬指点一下

仿照黑马的arkts 写个摇杆功能&#xff0c;但是为什么我的代码&#xff0c;TouchType.Up 时候摇杆动画不能还原&#xff0c; 请求大佬指点一下 import router from ohos.router import curves from ohos.curvesEntry Component struct ItemPage7 {// 小鱼坐标State fishX: nu…

vue data变量不能以“_”开头,否则会产生很多怪异问题

1、 比如给子组件赋值&#xff0c;子组件无法得到这个值&#xff08;也不是一直无法得到&#xff0c;设置后this.$forceUpdate() 居然可以得到&#xff09;&#xff0c; 更无法watch到 <zizujian :config"_config1"> </zizujian>this._config1 { ...…

XCTF-MISC1 文件内容遮挡

pdf 题目描述 题目分析 附件下载下来&#xff0c;是一张图片的pdf文件 调整图片透明度发现flag flag{security_through_obscurity}

Qt编写的exe程序上添加程序信息

1、qtcreator编写 在pro文件中添加如下信息 # 版本信息 VERSION 4.0.2.666# 图标 RC_ICONS Images/MyApp.ico# 公司名称 QMAKE_TARGET_COMPANY "Digia"# 产品名称 QMAKE_TARGET_PRODUCT "Qt Creator"# 文件说明 QMAKE_TARGET_DESCRIPTION "Qt …

基于Java网上点餐系统设计与实现

博主介绍&#xff1a; ✌至今服务客户已经1000、专注于Java技术领域、项目定制、技术答疑、开发工具、毕业项目实战 ✌ &#x1f345; 文末获取源码联系 &#x1f345; &#x1f447;&#x1f3fb; 精彩专栏 推荐订阅 &#x1f447;&#x1f3fb; 不然下次找不到 Java项目精品实…

工业4G 物联网网关——机房动环监控系统应用方案介绍

机房动环监控系统是什么&#xff1f;机房动环监控系统的全称为机房动力环境监控系统&#xff0c;是一套安装在机房内的监控系统&#xff0c;可以对分散在机房各处的独立动力设备、环境和安防进行实时监测&#xff0c;统计和分析处理相关数据&#xff0c;第一时间侦测到故障发生…

实时获取小红书笔记详情的API使用与解析

一、背景介绍 小红书是一个以分享消费经验、生活方式为主的社交平台&#xff0c;拥有大量的用户和内容。为了更好地了解用户在小红书上的行为和内容&#xff0c;许多开发者选择使用小红书开放平台提供的API接口。本文将介绍如何通过小红书笔记详情API实现实时数据获取&#xf…
最新文章