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

Linux权限相关知识(大量图文展示,及详细操作)

Linux权限相关概念

Linux下有两种用户:一种是超级用户(root)、一种是普通用户。
超级用户:可以在linux系统下做任何事情,不受限制
普通用户:在linux下做有限的事情。
超级用户的命令提示符是“#”,普通用户的命令提示符是“$”。
例如:在这里插入图片描述
在这里插入图片描述
而如果我们想要切换到普通用户则需要使用命令 su
例如:
在这里插入图片描述
我们可以看到已经有了一个普通用户 bai ,那么我们想要切换到bai这个普通用户只需要 执行 su bai这个命令
在这里插入图片描述
从普通用户切换到root 只需输入su即可
在这里插入图片描述

Linux权限管理

Linux中文件访问者的分类

有以下三种:
文件和文件目录的所有者:u—User
文件和文件目录的所有者所在的组的用户:g—Group
其它用户:o—Others

文件相关属性

在这里插入图片描述

基本权限

读(r):Read对文件而言,具有读取文件内容的权限;对目录来说,具有浏览该目录信息的权限
写(w):Write对文件而言,具有修改文件内容的权限;对目录来说具有删除移动目录内文件的权限
执行(x):execute对文件而言,具有执行文件的权限;对目录来说,具有进入目录的权限
“—”表示不具有该项权限
文件类型:
d:文件夹
-:普通文件
l:软链接(类似Windows的快捷方式)
b:块设备文件(例如硬盘、光驱等)
p:管道文件
c:字符设备文件(例如屏幕等串口设备)
s:套接口文件
在这里插入图片描述

文件文件权限值的表示方法

大家知道在计算机中底层其实就是 0 1来表示,那么权限也可以用二进制和八进制来表示的
在这里插入图片描述

文件访问权限设置

我们要对文件进行增加删除权限,需要用到chmod这个命令
chmod功能:设置文件的访问权限
使用方法 chmod [参数] 权限 文件名
例如:
在这里插入图片描述
可以看到cpdile这个文件拥有者 所属组 other都无权限
接下来我们通过chmod给他加上相关权限:
这里我们给拥有者加上了rw权限
加粗样式
我们给所属组加上了wx权限
在这里插入图片描述
这里则是给other加上rx权限
在这里插入图片描述
这里可以看到我们可以分别增加权限,而删除权限则为将+号改为-号,当然我们不仅可以分别添加,也可在一起添加删除
在这里插入图片描述
这里可以看到我们进行多条执行。
但是要知道root账户,可以无视权限,不受权限约束
文件的拥有者所属组other权限可以修改,那么拥有者所属组可以修改吗,结果是可以的。
我们要用到 chown 和chgrp
chown是修改拥有者
在这里插入图片描述
但是我们直接将拥有者修改是不行的,需要sudo命令进行提权,拿到root权限才能将拥有者修改
chgrp的用法与chown相同,也是需要提权才能修改所属组。

file指令

我们在大量创建文件是,文件太多不好查文件类型,那么就可以用file指令 file功能识别文件类型
在这里插入图片描述

目录权限

目录可执行权限:没有可执行权限, 则无法cd到目录中.
目录可读权限:没有可读权限, 则无法用ls等命令查看目录中的文件内容
目录可写权限:没有可写权限, 则无法在目录中创建文件, 也无法在目录中删除文件

换句话说只要用户具有目录的写权限, 那么用户可以删除目录中的文件。这样似乎不科学,我的东西他人为啥可以删除,而为了解决这个问题就引入了粘滞位的概念

粘滞位

在使用Linux时候,以后可能会有一些共享目录,可以被所有普通用户共享,保存数据,而粘滞位添加可以防止别人误删我的文件或者我删除他人文件,而共享目录通常是由root提供。
我们执行下面这条指令 chmod +t 目录 就可以可以给目录添加粘滞位,当但需要用sudo进行提权,但是root不受权限约束可以删除任何文件。

http://www.lryc.cn/news/24870.html

相关文章:

  • Ep_操作系统面试题-什么是协程
  • 在C#中使用互斥量解决多线程访问共享资源的冲突问题
  • JavaEE进阶第六课:SpringBoot配置文件
  • MySQL基础(一)SQL分类、导入、SELECT语句,运算符
  • 反激与正激的区别
  • 王道操作系统课代表 - 考研计算机 第四章 文件管理 究极精华总结笔记
  • 前端开发规范,你真的了解吗?一起来学习一下前端开发规范,让你的代码高级起来!
  • Licode—基于webrtc的SFU/MCU实现
  • 开发运维工具推荐 --- 解决远程访问局域网服务的问题。开发调试推荐
  • 【华为OD机试 】单词倒序(C++ Java JS Python)
  • PLC 诊断故障的基本原理
  • QT打开外部程序并嵌入Qt子窗口的缺点
  • 如何系统地学习 C++ 语言?
  • 【数据结构】单链表
  • Windows 右键菜单扩展容器 [开源]
  • 爆文制造机!小红书热榜3个方向,告诉你选题诀窍!
  • 【Web安全社工篇】——水坑攻击
  • SpringBoot 整合 MongoDB 实现数据的增删改查!
  • VUE前端常问面试题
  • c++中map/unordered_map的不同遍历方式以及结构化绑定
  • Kafka系列之:Kraft模式
  • 动态规划:leetcode 139.单词拆分、多重背包问题
  • Stable Diffusion原理详解
  • webpack高级配置
  • jQuery 事件
  • 【批处理脚本】-2.3-解析地址命令arp
  • 改进 YOLO V5 的密集行人检测算法研究(论文研读)——目标检测
  • Python - Opencv应用实例之CT图像检测边缘和内部缺陷
  • 管理逻辑备数据库(Logical Standby Database)
  • 【C++】构造函数(初始化列表)、explicit、 Static成员、友元、内部类、匿名对象