Linux权限

news/2024/10/17 18:28:24/

文章目录

一、Linux权限管理

  Linux下有两种用户:超级用户(root)、普通用户。

超级用户:可以再linux系统下做任何事情,不受限制
普通用户:在linux下做有限的事情。
超级用户的命令提示符是“#”,普通用户的命令提示符是“$”。

1、文件访问者的分类

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

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

  当我们创建一个文件,它有以下信息

文件类型
d:文件夹
-:普通文件
l:软链接(类似Windows的快捷方式)
b:块设备文件(例如硬盘、光驱等)
p:管道文件
c:字符设备文件(例如屏幕等串口设备)
s:套接口文件

  文件类型这么多,我们常用的只有普通文件和目录文件

基本权限
1、读(r/4): Read对文件而言,具有读取文件内容的权限;对目录来说,具有浏览该目录信息的权限
2、写(w/2): Write对文件而言,具有修改文件内容的权限;对目录来说具有删除移动目录内文件的权限
3、执行(x/1): execute对文件而言,具有执行文件的权限;对目录来说,具有进入目录的权限
4、“—”表示不具有该项权限

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

4、目录文件的 r 、 w 、 x r、w、x rwx代表含义

  目录文件
r:是否允许我们查看指定目录下的文件内容
w:是否允许我们在当前目录下进行创建,更改,删除
x:是否允许用户进入对应的目录!

二、文件访问权限的相关设置方法

1、 c h m o d chmod chmod + [参数] + 权限 + 文件名

常用选项:
R -> 递归修改目录文件的权限
说明:只有文件的拥有者和root才可以改变文件的权限

格式
+:向权限范围增加权限代号所表示的权限
-:向权限范围取消权限代号所表示的权限
=:向权限范围赋予权限代号所表示的权限
用户符号:
u:拥有者
g:拥有者同组用
o:其它用户
a:所有用户

  用二进制进行权限修改的时候,第一位表示对拥有者进行修改,第二位表示对所属组进行修改,第三位表示对其它人进行修改,比如000,表示去掉所有人的读、写、执行权限,777则反之,其它依次类推

2、 c h o w n chown chown c h g r p chgrp chgrp + user + 文件



  对于身份认定,你只要是拥有者了,就不会看你是不是所属组,依次尽管所属组中你有w权限,但在拥有者中你没有w权限,那你就没有权限写入

3、 u m a s k umask umask + 权限值

功能:
查看或修改文件掩码
新建文件夹默认权限=0666
新建目录默认权限=0777
但实际上你所创建的文件和目录,看到的权限往往不是上面这个值。原因就是创建文件或目录的时候还要受到
umask的影响。假设默认权限是mask,则实际创建的出来的文件权限是: (mask & ~umask)即按位异或

  注意:将现有的存取权限减去权限掩码后,即可产生建立文件时预设权限。超级用户默认掩码值为0022,普通用户默认为0002。即把下面的022改为002在运算.因此普通文件664,目录775

  同时umask也可以修改掩码值,那么创建出来的文件权限也会发生变化

4、 s u su su + [用户名]

功能:切换用户
  例如,要从root用户切换到普通用户user,则使用 su user。 要从普通用户user切换到root用户则使用 su root(root可以省略),此时系统会提示输入root用户的口令,密码。而从root到普通用户不需要输入密码
   s u d o + sudo + sudo+ 指令,我们可以暂时对一条命令提权,而我们目前用的adduser新建的用户,没有颁发执行 s u d o sudo sudo,系统不信任你,除非未来需要将普通用户添加到系统的信任白名单里面

5、 f i l e file file + [选项] 文件或目录

  file指令用于辨别文件类型

常用选项:
-c 详细显示指令执行过程,便于排错或分析程序执行的情形。
-z 尝试去解读压缩文件的内容。

6、粘滞位

  一个文件能香被删除,并不由文件本身决定,由这个文件所处的目录决定!如果我们去掉了共享目录的w权限,我们也同时无法创建文件啦!你的共享目录,共享体现在哪里呢??入下面这种不合理的行为

  对此我们引出粘滞位概念。给目录设置,一般是共享目录,大家可以进行在目录进行各自文件的增删改查,只允许文件拥有者或者root能删这个文件,其他人一概不允许,t是一种特殊的x权限!

c h m o d o + t chmod o+t chmodo+t

  当我们想要共享文件时,普通用户并没有建立共享目录的权力,而Linux自带了一个共享tmp目录带了粘滞位t,方便我们在共享目录中进行操作

三、权限总结

目录的可执行权限是表示你可否在目录下执行命令。
如果目录没有-x权限,则无法对目录执行任何命令,甚至无法cd 进入目, 即使目录仍然有-r 读权限(这个地方很容易犯错,认为有读权限就可以进入目录读取目录下的文件)
而如果目录具有-x权限,但没有-r权限,则用户可以执行命令,可以cd进入目录。但由于没有目录的读权限
所以在目录下,即使可以执行ls命令,但仍然没有权限读出目录下的文档

总结:
  手动练习Linux相关知识能加深我们对知识的理解,下一篇LInux我们将学习如何用Linux写上一些代码,期待我们下一篇博客见面!!!


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

相关文章

什么是点对点传输?什么是点对多传输

点对点技术(peer-to-peer, 简称P2P)又称对等互联网络技术,是一种网络新技术,依赖网络中参与者的计算能力和带宽,而不是把依赖都聚集在较少的几台服务器上。P2P网络通常用于通过Ad Hoc连接来连接节点。这类网…

算法修炼之练气篇——练气十一层

博主:命运之光 专栏:算法修炼之练气篇 前言:每天练习五道题,炼气篇大概会练习200道题左右,题目有C语言网上的题,也有洛谷上面的题,题目简单适合新手入门。(代码都是命运之光自己写的…

k8s集群部署 | 三节点(复用)高可用集群过程参考

文章目录 1. kubeadm 部署三节点(复用)高可用 k8s 集群1.1 环境规划阶段1.1.1 实验架构图1.1.2 系统版本说明1.1.3 环境基本信息1.1.4 k8s 网段划分 1.2 基础安装及优化阶段1.2.1 系统信息检查1.2.2 静态 IP 地址配置1.2.3 配置主机名1.2.4 配置/etc/hos…

时至今日,Linux会开源,也是一种态度

什么是开源?开源通常指开发者公开系统/应用程序源代码。通过对代码进行共享和重用,可以快速开发出高质量、低维护成本的应用程序。这意味着你不再需要花很多时间来学习新技术或编写复杂的代码。 一、Linux永远的神 就拿linux来举例子。 Linux系统的发起…

yolov8训练记录

resume: 将model设置为最近一次训练的权重路径 (last.pt) resume设置为True YOLOv8 在 Python 环境中直接使用,不用 ultralytics 库 pip uninstall ultralytics 原因:安装 ultralytics 库,只能在虚拟环境中使用,自己修改代码非常…

MATLAB 之 函数文件、特殊形式的函数和程序调试与优化

文章目录 一、函数文件1. 函数文件的基本结构2. 函数调用2.1 函数调用的格式2.2 函数的递归调用2.3 函数参数的可调性2.4 全局变量与局部变量 二、特殊形式的函数1. 子函数2. 内联函数3. 匿名函数 三、程序调试与优化1. 程序调试方法1.1 利用调试函数进行程序测试1.2 利用调试工…

数据结构——双向链表(保姆级教程,包学包会)

1.双向链表的概念 双向链表就是带头双向循环链表 我们在学完单链表之后,就感觉这个非常简单了,他的主要表现就是拥有头节点,链表永不为空,不需要二级指针;可以通过一个节点找到上一个或者下一个节点;头尾…

【C++刷题集】-- day1

目录 选择题 单选 编程题 组队竞赛⭐ 【题目解析】 【解题思路】(排序 贪心) 删除公共字符⭐ 【题目解析】 【解题思路】(哈希映射) 选择题 单选 1、 以下for循环的执行次数是 ( ) for(int x 0, y 0; (y 123) && (x < 4); x); 是无限循环 循环次数不…