【Linux基础】02 权限

news/2024/12/23 7:32:07/

2024-09-11

shell

⭐原理上初步理解 shell
为什么?

  • 用户不能直接访问 OS
  • 操作系统本身:易用程度+安全
    可以检查用户的指令是否非法、安全
    是什么?
    核心工作:用户和内核之间
    需求指令 <-shell->执行结果
    • 将使用者的命令翻译给核心处理
    • 同时,将核心的处理结果翻译给使用者
      怎么办?
      shell:本质是一个执行起来的程序(或者称之为“进程”),系统启动期间,一直存在。
      对于有风险、用户自定义指令,shell 都是通过创建 子进程的方式让子进程去执行有风险的命令
      shell 是一个统称,bash、sh 等是具体的命令行解释器。

Linux 用户

  1. root,超级管理员
  2. 非 root,xxx,普通用户

普通用户切换成 root,需要输入 root 的密码
管理员才会具有 root 密码
root 账号变成普通,不用认证的。
普通用户变成另一个普通用户,需要对方的密码

对指令提权

假如我现在是普通用户,但我只想用root账号执行一条命令,如果切换为root那么太麻烦了
sudo 对指定的指令进行提权

权限管理

权限是用来限制人的。
对应的操作对象,一定要有对应的满足人的需求的属性。

文件访问者的分类(人)

Linux 群体——更多的是角色—— 拥有者、所属组、other
一个人有多个身份
user->u group->g other->o

文件类型和访问权限(事物属性)

文件类型

第一个字符,表示文件类型
Linux 的文件类型不通过后缀区分(不代表 Linux 不用后缀)

-:普通文件,文本、源代码、图片、视频、库、可执行等
d:目录文件
b:block,块设备文件
c:char,字符设备文件
键盘、显示器——不允许随机访问
l:链接文件
p:管道文件
s:socket 文件

基本权限

Linux 操作对象的属性——文件权限——r w x

  • r:Read对文件而言,具有读取文件内容的权限;对目录来说,具有浏览该目录信息的权限
  • w:Write对文件而言,具有修改文件内容的权限;对目录来说具有删除移动目录内文件的权限
  • x:execute对文件而言,具有执行文件的权限;对目录来说,具有进入目录的权限 iv.“—”表示不具有该项权限
  • -:表示不具有该项权限
    image.png
    如何修改权限
    chmod u/g/o/a +/- r/w/x FILENAME

或者通过其对应权限用数值形式
在系统中使用二进制位存储,也就是使用0和1表示是否具备操作的权限,以每3个比特位表示一个八进制数字(取值范围:0~7),则转换为三个8进制数字
如 rwx–111—7
-rw-r--r-x ——645

更改文件拥有者
chown+用户+文件名 chgrp +用户+文件名`

对于文件后缀的态度:虽然 Linux 不通过它识别文件类型,但是我们依旧推荐使用!
1. 工具需要
2. 人需要

file 指令:可告诉我们文件类型
image.png|425

常见的权限三个问题

对文件夹的权限理解

  1. 对一个目录而言,如果要进入一个目录,需要什么权限?
    1. x 决定是否可以进入目录
    2. r 决定是否可以进行对文件属性信息进行查看的权利,Is-I
    3. w 决定是否可以在目录下进行新建和删除文件

默认权限以及权限掩码

  1. 为什么我们创建的普通文件:默认的权限不是 777,而是 664
    普通文件的起始权限:666
    为什么我们创建的目录文件:默认的权限不是 777,而是 775
    目录文件的起始权限:777
    umask:(该指令)查看权限掩码
    定制一个文件被创建的时候的默认权限

权限掩码的相关计算

  1. 将权限掩码和起始权限变成二进制
  2. 将这两个二进制对一一对应
  3. 权限掩码为1,起始权限为1时,起始权限改为0
  4. 权限掩码为0,起始权限也为0时,起始权限不变
    总结:从起始权限中去掉umask (权限掩码)中出现的权限。不是减法!!!
    image.png
    计算公式:起始权限&(~umask) = 最终权限(默认)(还是总结的更好记)

拓展:粘滞位

  1. 一个文件能否被删除,并不取决于文件本身!!! 而取决于文件所处的目录,拥有者是否具有 w 权限。
    如果我们需要一个特定的目录下,实现文件的共享呢?
    为了实现让多个用户之间可以数据共享,将 other 的 rwx 权限全部放开,共享的目的达到了!但是删一个文件与你这个文件本身无关(所以别人就可以删我们的文件),防不住别人删我的文件。
    • 去掉 other 的 w 权限不就可以了吗?但是也会阻止别人新建文件。
      于是,给 other 新增了一个权限:t
      粘滞位:给目录中的 other 设置的一个权限位,具有 x 的意义,同时也进一步对目录权限进行特殊限定:该目录里面的文件,只有 root 、该目录的所有者、文件的拥有者有权利进行删除!!!其他人一概不允许!

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

相关文章

ChatGPT在环境科学领域的应用前沿分享

ChatGPT在环境科学领域的应用前沿 在党的二十届三中全会上&#xff0c;明确要求健全因地制宜的发展新质生产力体制机制。新质生产力通过创新驱动&#xff0c;以高科技、高效能、高质量为特征&#xff0c;旨在摆脱传统经济增长方式和生产力发展路径&#xff0c;符合新发展理念。…

mathorcup发邮件:参赛必看邮件撰写技巧?

mathorcup发邮件的注意事项&#xff1f;如何使用mathorcup发信&#xff1f; 无论是提交参赛作品、咨询比赛规则&#xff0c;还是与组委会沟通&#xff0c;一封清晰、专业的邮件都能为你赢得更多机会。AokSend将为你详细介绍mathorcup发邮件的撰写技巧&#xff0c;帮助你在比赛…

基于JavaWeb开发的java springboot+mybatis电影售票网站管理系统前台+后台设计和实现

基于JavaWeb开发的java springbootmybatis电影售票网站管理系统前台后台设计和实现 &#x1f345; 作者主页 网顺技术团队 &#x1f345; 欢迎点赞 &#x1f44d; 收藏 ⭐留言 &#x1f4dd; &#x1f345; 文末获取源码联系方式 &#x1f4dd; &#x1f345; 查看下方微信号获…

共享内存喜欢沙县小吃

旭日新摊子好耶&#xff01; 系统从0开始搭建过通信方案&#xff0c;本地通信方案的代码&#xff1a;System V IPC 里面有共享内存、消息队列、信号量 共享内存 原理 两个进程有自己的内存区域划分&#xff0c;共享内存被创建出的时候是归属操作系统的&#xff0c;还是通过…

基于UDP的简易网络通信程序

目录 0.前言 1.前置知识 网络通信的大致流程 IP地址 端口号&#xff08;port&#xff09; 客户端如何得知服务器端的IP地址和端口号&#xff1f; 服务器端如何得知客户端的IP地址和端口号&#xff1f; 2.实现代码 代码模块的设计 服务器端代码 成员说明 成员实现 U…

运行PaddleOCR报错:requests.exceptions.SSLError: HTTPSconnectionPool……

文章目录 问题描述解决方法 问题描述 在运行以下代码时报错&#xff1a; ocr PaddleOCR(lang"en")解决方法 打开cmd&#xff0c;输入以下命令&#xff0c;查找Python解释器所在路径。 找到 Lib\site-packages\paddleocr\ppocr\utils\network.py&#xff0c;将代码…

【Linux】数据链路层

一、数据链路层引入 1.1 数据链路层的功能 在网络层中&#xff0c;我们使用IP协议进行通信&#xff0c;需要进行跨网络转发到目标主机&#xff0c;本质上就是一个报文经历了无数个子网&#xff0c;而数据链路层就是解决在一个子网中如何传输报文的问题。 数据链路层的功能是&a…

5款好用的远程控制软件测评分享|总有一款适合你!

随着远程办公和协作的需求日益增加&#xff0c;远程控制软件已经成为许多人日常生活和工作中不可或缺的一部分。 无论是技术支持、家庭办公还是远程协作&#xff0c;一款好的远程控制软件都能够极大地提升效率和便利性。 以下是五款市面上口碑较好、功能强大的远程控制软件的…