【Linux进阶之路】基本权限的理解

news/2024/11/19 23:24:08/

文章目录

  • 一.用户
    • 1.分类
    • 2.su
    • 3.su-
    • 4.sudo
  • 二.文件
    • 1.文件分类
    • 2.文件权限
    • 3.文件权限的身份
    • 4.chmod——改写文件权限
      • 第一种方式
      • 第二种方式
    • 5.chown——改写文件拥有者身份
    • 6.chgrp ——改写文件所属组身份
    • 7.umask ——设置权限掩码
    • 8.目录权限
    • 9.粘滞位——特殊的可执行权限

一.用户

1.分类

一张图带你认清用户:
在这里插入图片描述

2.su

示例:
在这里插入图片描述

3.su-

示例:
在这里插入图片描述

4.sudo

示例:
在这里插入图片描述

二.文件

  • 我们看着下图红的部分可能有点懵,不急我们一个一个说。
    在这里插入图片描述

1.文件分类

我们先看第一部分——文件的分类
在这里插入图片描述
这时d就是——文件目录

2.文件权限

  • 文件的权限分为:

  • 读权限——r,

  • 写权限——w,

  • 以及可执行权限——x,

  • 对应位置没有权限—— -

  • 到这里我们再看最初给的那张图片,或许理解了一点。

  • 但为啥有3组权限呢?这3组权限有什么意义吗?我们接着讲。

3.文件权限的身份

  • 假如你建立了一个文件,这时你是这个文件的拥有者
  • 当你和另一个人分享一个文件时,另一个人是这个文件的所属组,也就是你跟另一个人拉了一个群私聊。
  • 那么再出现一个人想要看这个文件时,那么这个人就是其他人

  • 说明:用户是人名,扮演的角色就是其身份,比如张三是校长,张三就是人名——用户,校长就是角色——身份。

  • 总结
    有了这几个概念,我们再来看分析最开始的那张图。

在这里插入图片描述
在这里插入图片描述

  • 补充:连接数指的是目录下的目录文件数目(这个数目=隐藏目录数目+普通目录数目)
  • 说明:当拥有者与所属组相同时,优先使用拥有者的权限。

4.chmod——改写文件权限

  • 用chmod改权限,其权限身份必须是拥有者,或者用户是root用户。
  • 创建一个test.c文件

第一种方式

在这里插入图片描述

第二种方式

  • 使用二进制来表示文件的指定位置上的权限(指定位置上的权限是确定的),0代表指定位置上没有权限,1代表指定位置上有权限。
  • 举例:
  • 777 (8进制)可看成 111 111 111 这是对文件的所有位置都加上权限。
  • 000 这是文件的所有位置都取消权限。

同样的操作可以写成:
在这里插入图片描述

5.chown——改写文件拥有者身份

  • 说明:普通用户改写文件权限身份,需经过另一个权限身份的同意,因此通常操作不被允许。而root用户,则不需要。

  • 我们先要使用root账号,并且要创建两个用户名——这是我创建的shun_hua 以及 tmp

在这里插入图片描述

  • 这时我们就把文件身份的拥有者改为了tmp

6.chgrp ——改写文件所属组身份

在这里插入图片描述

  • 此时我们要想再改回来呢?
  • 只需一条指令
    在这里插入图片描述

7.umask ——设置权限掩码

  • 普通文件的默认权限是——666
  • 目录文件的默认权限是——777

我们创建一个文件和一个目录:
在这里插入图片描述

  • 目录的权限是——755
  • 文件的权限是——644

此时我们再看一下掩码:
在这里插入图片描述

  • 掩码 —— 22

那这是怎么计算的呢?其实要按照 ——默认权限 &(~掩码)

在这里插入图片描述

8.目录权限

  • r ——能进入目录,但是不能对目录的内容进行查看
  • w ——能进入目录,但是不能对目录的内容进行修改,删除,创建 。
  • x ——不能进入目录,也不允许对目录进行指令操作。
  • 用户目录的默认权限是——700,只能拥有者/root进行操作。

9.粘滞位——特殊的可执行权限

  • 说明:是否对一个文件进行删除,并不由该文件的权限决定,而由该文件所处的目录的用户权限进行决定。

问题引出:如果设置一个共享目录,这个目录对其他人的权限是:可读,可写,可执行。

  • 此时,一个用户在此目录下创建一个文件之后,另一个用户在此目录下可对改文件进行删除工作,那么如果不想另一用户对此文件进行删除的话,我们就只好把其它人的写权限去掉,此时原来用户也无法创建文件了,这该怎么办呢?

  • 答案——使用粘滞位。

  • 粘滞位只允许文件的拥有者/root对文件进行删除的工作,而其它用户则对该文件删除不了。

  • 因此:共享目录下设置粘滞位是很有必要的,也的确如此。

  • 补充:Linux系统的根目录下,默认提供了一个共享目录tmp。

在这里插入图片描述


http://www.ppmy.cn/news/75748.html

相关文章

随身WIFI折腾日记(四)---拓展USB接口读取U盘内容

五、USB行为控制 随身WIFI对外交互的接口只有WIFI和USB接口。如果要想接入其他硬件设备,拓展USB接口至关重要,对于USB接口的控制,参考如下链接: openstick项目官方教程:控制usb行为 HandsomeMod/gc: A Simple Tool To Control Usb Gadget …

tps和qps的区别是什么?怎么理解

区别:QPS指的是“每秒查询率”;而TPS指的是“事务数/秒”。理解:Tps即每秒处理事务数,对于一个页面的一次访问,形成一个Tps;而一次页面请求,可能产生多次对服务器的请求,服务器对这些…

【TES714】JFM7K325T(复旦微FPGA)+HI3531DV200(华为海思)的综合视频处理平台设计原理图及调试经验

板卡概述 TES714是自主研制的一款5路HD-SDI视频采集图像处理平台,该平台采用上海复旦微的高性能Kintex系列FPGA加上华为海思的高性能视频处理器HI3531DV200来实现。 华为海思的HI3531DV200是一款集成了ARM A53四核处理器性能强大的神经网络引擎,支持多种…

逻辑备份和还原

逻辑备份和还原 什么物理备份和还原 (1)逻辑备份是对整个数据库或数据库中的部分对象利用逻辑备份工具导出数据到备份文件 (2)在需要的数据库恢复的情况下利用逻辑备份还原工具吧备份文件恢复到数据库中 使用场景主要用于数据…

04 Android开机启动之Zygote

Android开机启动之Zygote 一、认识Zygote进程 Zygote中文翻译为“受精卵”,正如其名,它主要用于孵化子进程。在Android系统中有以下两种程序: java应用程序,主要基于ART虚拟机,所有的应用程序apk都属于这类 native程序,也就是利用C或C++语言开发的程序,如bootanimatio…

老司机解读香农定理、奈奎斯特定理、编码与调制

工程师都会考虑一个问题:信道上到底可以传输多大的数据,或者指定的信道上的极限传输率是多少。这就是信道容量的问题。例如,在xDSL系统中,我们使用的传输介质是仅有几兆带宽的电话线,而上面要传送几兆、十几兆甚至几十…

信号完整性分析基础知识之传输线和反射(七):带负载传输线、感性不连续引起的反射

带负载传输线 如果在传输线上有一个小的容性负载,信号会出现失真,上升时间也会降低。每个分立电容都会降低信号在其附近看到的阻抗。如果传输线上分布有多个容性负载(例如一个总线上每隔1.2inch有一个2pF的连接器残桩,或者一个内…

04-jQuery-选择器

一、基本选择器 1、标签选择器(元素选择器) 元素选择器可以选取HTML文档中所有匹配的元素。例如,如果要选取所有段落元素(p) $("p") //这将返回页面中所有的段落元素。 2、id选择器 id选择器根据元素的…