当前位置: 首页 > news >正文

【Linux】用户权限

shell命令

1. Linux本质上是一个操作系统,但是一般的用户不能直接使用它,而是需要通过外壳程序shell,来与Linux内核进行沟通。

2. shell的简单定义:命令行解释器。主要包含以下作用:

  • 将使用者的命令翻译给核心处理
  • 将核心的处理结果翻译并呈现给使用者。 

3. 对比windows GUI,我们操作windows也不是直接操作windows内核,而是通过图形接口,进行点击从而完成操作:比如进入D盘的操作,我们通常是双击D盘

4. shell对于Linux系统来说有相同的作用用户输入的指令经由shell解析并传递给Linux内核执行,随后内核运行的结果再通过shell解析后反馈给用户

Linux权限

用户与权限

1. Linux系统 有两种用 户: 超级用户 普通用户
  • 超级用户:可以在linux系统下做任何事情,不受限制。超级用户的命令提示符是''#''
  • 普通用户:在linux系统下做有限的事情。普通用户的命令提示符是''$''
2. 权限=角色+事物属性
  • 角色:学生不能进入校长办公室。
  • 事物属性:抖音上无法刷算法题。

su指令

su user_name切换用户,切换成user_name用户

su root切换用户,切换成root用户

1. 普通用户切换成其他用户,需要输入密码。

2. root用户切换成其他用户,不需要输入密码。 

sudo指令

sudo xxx在普通用户的账号中,使用超级用户权限进行操作xxx

1. 超级用户把当前普通用户拉入白名单后,才能使用sudo指令。 

2. 一般来说,普通用户安装软件时,需要用到超级权限,此时就需要使用sudo指令

权限的查询与修改

1. Linux中的角色分成三类:

  • u --->文件拥有者
  • g --->文件所属组
  • o --->other
  • a --->all

2. Linux中的事物属性分成三类:

  • r --->对普通文件来说->可读对目录来说->无法查看目录下的文件信息
  • w --->对普通文件来说->可写对目录来说->无法查看目录下新建、删除、修改文件
  • x --->对普通文件来说->可执行对目录来说->无法进入目录

3. Linux中的权限操作符分成三类:

  • + --->添加权限
  • - --->移除权限
  • = --->覆盖原有权限

1. 第一部分的十个字符中

  • 1 表示文件类型
  • 2、3、4表示拥有者权限
  • 5、6、7表示所属组权限
  • 8、9、10表示other权限

chmod指令

chmod (u+-=(rwx)) (g+-=(rwx)) (o+-=(rwx)) xxx修改xxx文件的权限

chmod 777(8进制) xxx修改xxx文件的权限

1. 只有文件的拥有者或者超级用户才能够修改文件的权限。 

2. 文件的user角色group角色other角色,在和用户匹配时,从左向右依次匹配,并且只成功匹配一次。

3. r(-)w(-)x(-)可以转换成一个8进制数字范围从0-7

chown user  xxx把xxx文件的所有者权限给user

chgrp user xxx把xxx文件的所属组权限给user

1. 在移交所有者权限时,要么使用超级用户,要么使用指令提权。 

umask指令 

umask 0xxx修改文件的掩码改成0xxx

1. 在Linux系统中,新建普通文件起始权限默认为666新建目录起始权限默认为777

2. 如果想修改最终权限的默认值,则需要使用umask指令进行修改。

3. 最终权限 = 起始权限 & (~umask) 

共享目录

1. 在Linux多用户环境中,各个用户对于/home目录下的个人文件访问是相互独立且隔离的

2. 如果普通用户想要共享一个文件,就不能建立在各自的家目录下而需要在根目录/下面新建立一个共享目录

3. 删除一个文件与该文件的权限无关与该文件所在目录的w权限有关

粘滞位 

chmod +t xxx给xxx文件加上粘滞位。 

1. 共享文件一般都要设置粘滞位,防止有人恶意删除共享文件

2. 共享文件加上粘滞位后,在共享文件中,只有共享文件创建者才能删除该共享文件

3. 由于共享文件一般是在根目录/下,所以在设置粘滞位时,要么用超级用户设置,要么用sudo指令提权

http://www.xdnf.cn/news/81307.html

相关文章:

  • LangChain 核心模块学习:Chains
  • USB 共享神器 VirtualHere 局域网内远程使用打印机与扫描仪
  • 安宝特科技 | Vuzix Z100智能眼镜+AugmentOS:重新定义AI可穿戴设备的未来——从操作系统到硬件生态,如何掀起无感智能革命?
  • 麒麟系统网络连接问题排查
  • 乐视系列玩机------乐视2 x620红灯 黑砖刷写教程以及新版刷写工具的详细释义
  • C++IO流
  • AI 数字短视频数字人源码开发:多维赋能短视频生态革新​
  • 图像预处理-直方图均衡化
  • 卷积神经网络迁移学习:原理与实践指南
  • GSAP 动画引擎实战:打造丝滑动效交互组件库
  • 在 40 亿整数中捕获“恰好出现两次”的数字
  • Git管理
  • 离散化区间和 java c++
  • Springboot整合MyBatisplus和快速入门
  • lspci的资料
  • crewai与langchain分析某公司股票是否可购买
  • prtobuf的原理
  • 2.Spring MVC与WebFlux响应式编程
  • UOS+N 卡 + CUDA 环境下 X86 架构 DeepSeek 基于 vLLM 部署与 Dify 平台搭建指南
  • Nature Communications 面向形状可编程磁性软材料的数据驱动设计方法—基于随机设计探索与神经网络的协同优化框架
  • 30分钟编写十大排序算法完成
  • 施磊老师基于muduo网络库的集群聊天服务器(四)
  • 含锡废水具有显著的回收价值
  • kvm下的ceph主机启动io请求统计
  • AOSP Android14 Launcher3——RecentsView最近任务数据加载
  • Hive学习
  • 【数字图像处理】立体视觉基础(1)
  • 禁止ubuntu自动更新
  • 基于nlohmann/json 实现 从C++对象转换成JSON数据格式
  • c++内存池