Linux-权限的理解

news2024/12/25 12:32:14

目录

一、Shell命令以及运行原理

二、Linux权限的概念

三、Linux权限管理

1、文件访问者的分类

2、文件类型和访问权限

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

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

1)chmod

2)chown

3)chgrp

4)umask

5)file

5、目录的权限

6、粘滞位

7、总结

一、Shell命令以及运行原理

  • 概念:

Linux严格意义上说的是一个操作系统,我们称之为“核心(kernel) “ ,但我们一般不能直接使用kernel,而是通过kernel的“外壳”程序(shell),来与kernel沟通

  • Shell(命令行解释器)的作用:
  1. 操作系统的语言是机器语言,用户直接与操作系统沟通成本大,所以Shell将用户的命令翻译给核心(kernel)处理,并将核心的处理结果翻译给用户(提供良好的使用环境)

  2. 面对用户的不合意请求,操作系统会拒绝请求,以此来保护操作系统

  • Shell与bash:

Shell是命令行解释器的统称,而bash的具体的一种命令行解释器

二、Linux权限的概念

 

  • Linux下有两种用户:
  1. 超级用户(root):可以再linux系统下做任何事情,不受限制

  2. 普通用户:在linux下做有限的事情

注:超级用户的命令提示符是“#”,普通用户的命令提示符是“$”

三、Linux权限管理

1、文件访问者的分类

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

注:group的意义是在保证文件安全的前提下,进行组内协同

2、文件类型和访问权限

示图:

  • 示例:

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

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

  • 字符表示方法:

  • 8进制数值表示法:

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

1)chmod

  • 语法:

chmod [参数] 权限 文件名

  • 功能:

设置文件的访问权限

  • 常用选项:

R -> 递归修改目录文件的权限

注:只有文件的拥有者和root才可以改变文件的权限

  • 修改权限格式1:

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

修改权限格式2:

chmod 三位8进制数字

  • 示例:

2)chown

  • 语法:

chown [参数] 用户名 文件名

  • 功能:

修改文件的拥有者

  • 常用选项:

R -> 递归修改目录文件的权所有者
 

  • 示例:

chown既可以只修改文件拥有者,又可以修改文件的所属组。

3)chgrp

  • 语法:

chgrp [参数] 用户组名 文件名

  • 功能:

修改文件或目录的所属组

  • 常用选项:

-R 递归修改文件或目录的所属组

  • 示例:

4)umask

  • 概念:
  1. 新建文件夹默认权限=0666;新建目录默认权限=0777

  2. 但实际上你所创建的文件和目录,看到的权限往往不是上面这个值,原因就是创建文件或目录的时候还要受到umask的影响

  • 功能:

查看或修改文件掩码

  • umask权限值:
  1. 超级用户默认掩码值为0022,普通用户默认为0002

  2. 将现有的存取权限减去权限掩码后,即可产生建立文件时预设权限

  • 示例:

5)file

  • 语法:

file [选项] 文件或目录…

  • 功能:

辨识文件类型

  • 常用选项:

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

5、目录的权限

可执行权限: 如果目录没有可执行权限, 则无法cd到目录中

可读权限: 如果目录没有可读权限, 则无法用ls等命令查看目录中的文件内容

可写权限: 如果目录没有可写权限, 则无法在目录中创建文件, 也无法在目录中删除文件

注:只要用户具有目录的写权限, 用户就可以删除目录中的文件, 而不论这个用户是否有这个文件的写权限

6、粘滞位

  • 语法:

chmod +t 目录

  • 功能:

当一个目录被设置为"粘滞位"(用chmod +t),则该目录下的文件只能由 :超级管理员删除,该目录的所有者删除,该文件的所有者删除

7、总结

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/537039.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

商业银行积极践行双碳战略,浦发信用卡绿色低碳3.0全方位助力双碳经济

易观:“双碳”目标驱动下,高速增长的绿色金融需求将成为银行新增长点,银行机构以“绿色银行”为战略导向,加快绿色业务布局,以低碳生活主题信用卡探索绿色金融发展新模式。浦发银行聚焦绿色金融,以信用卡探…

pix2pix代码

看一下模型图: 首先定义生成器G,和CGAN不同的是,pix2pix并没有输入噪声,而是采用dropout来增加随即性。然后生成器输入x,输出y都是一些图片。最后按照原文,G是一个U-Net shape的,除了上采样和下…

openwrt的openclash提示【更新失败,请确认设备闪存空间足够后再试】

网上搜索了一下,问题应该是出在“无法从网络下载内核更新包”或者“无法识别内核的版本号” 解决办法:手动下载(我是只搞了DEV内核就搞定了TUN和Meta没有动) --> 上传到路由器上 --> 解压缩 --> 回到openclash界面更新配…

技术干货 | 结构光技术及其实现三维成像的主要原理

原创 | 文BFT机器人 3D表面成像的一种主要方法是基于“结构光”的使用 即使用专门设计的二维空间变化强度模式对场景进行主动照明 3D结构光的整个系统包含结构光投影设备、摄像机、图像采集和处理系统。其过程就是投影设备发射光线到被测物体上,摄像机拍摄在被测物体…

Element 格式化表单文本内容

提示&#xff1a;本文效果通用于其它形式文本格式化&#xff0c;此处以 Element 表单为例。 数据库内容 数据存储格式为 text&#xff0c;换行符号 \r\n 前端代码 <el-table-column v-if"columns.visible(changeContent)" prop"changeContent" labe…

线程池的位运算详解

前言 翻阅 Java 线程池的源码&#xff0c;可以看到用到了大量的位运算操作&#xff0c;本文来分析下这些位运算是如何计算的&#xff0c;以及最后算出的结果是什么。 正文 阅读之前&#xff0c;必须熟悉一下内容 & 与运算| 或运算&#xff5e; 取反<< 左移负数的二进…

迪赛智慧数——柱状图(象形标识图):当代职场人心愿清单TOP10

效果图 职场人十大心愿&#xff1a;“脱单”位列第一&#xff0c;“容貌焦虑”成新难题。 除脱单之外&#xff0c;如今职场人的十大心愿就寄托了人类的高质量梦想&#xff0c;比如财务自由、到点下班、提前退休、有房有车…… 不过&#xff0c;让人心疼的是&#xff0c;不少人…

「网安人必看」安全行业主流证书,你知道如何选择吗

现在&#xff0c;越来越多单位为了满足国家安全法律法规的要求&#xff0c;成立独立的网络安全部门&#xff0c;招聘网络安全人才&#xff0c;组建 SRC&#xff08;安全响应中心&#xff09;&#xff0c;为自己的产品、应用、数据保卫护航。短短几年间&#xff0c;网络安全工程…

Goby 漏洞更新 | Weaver e-cology ofsLogin.jsp 用户登陆绕过漏洞

漏洞名称&#xff1a;Weaver e-cology ofsLogin.jsp 用户登陆绕过漏洞 English Name&#xff1a;Weaver e-cology ofsLogin.jsp User Login Bypass Vulnerability CVSS core: 9.3 影响资产数&#xff1a;92980 漏洞描述&#xff1a; 泛微协同管理应用平台&#xff08;e-co…

Python os模块详解

1. 简介 os就是“operating system”的缩写&#xff0c;顾名思义&#xff0c;os模块提供的就是各种 Python 程序与操作系统进行交互的接口。通过使用os模块&#xff0c;一方面可以方便地与操作系统进行交互&#xff0c;另一方面页也可以极大增强代码的可移植性。如果该模块中相…

【SQLserver】sqlserver数据库还原

这里的还原主要是指一个数据备份文件导入到本地 用到的工具&#xff1a; SQLServerManagement Studio18 1、打开本地库&#xff0c;在数据库右键&#xff0c;点击“还原数据库” 2、选择需要还原的文件&#xff0c;这里选设备&#xff0c;后面选择 3、弹窗点击添加按钮&am…

MyBatis中的别名机制

在我们使用MyBatis中的select语句时&#xff0c;需要指定resultType的值&#xff0c;即查询对象的类型&#xff0c;该值是对象的完整类名&#xff0c;看起来非常的繁琐&#xff0c;因此MyBatis中有了别名机制。 使用步骤 在mybatis-config.xml文件中添加< typeAliases >…

Vue--》探索Pinia:Vue状态管理的未来

目录 Pinia的讲解与使用 Pinia的安装与使用 store数据操作 解构store数据 actions-getters的使用 Pinia常用API 持久化插件 Pinia的讲解与使用 Pinia 是由 Eduardo San Martin Morote 创建的&#xff0c;这是一个轻量级的、使用 Vue3 Composition API 的状态管理库。Pi…

谷粒商城二十五springCloud之Sleuth+Zipkin 服务链路追踪

为什么用 分布式系统庞大而复杂&#xff0c;服务众多&#xff0c;调用关系网也非常复杂&#xff0c; 服务上线以后如果出现了某些错误&#xff0c;错误的异常就很难定位。一个请求可能调用了非常多的链路&#xff0c;我们需要知道到底哪一块儿出现了错误。 最终希望有一个链…

Java基础学习(16)多线程

Java基础学习多线程 一、多线程1.1 什么是多线程1.2 多线程的两个概念1.2.1 并发 1.3 多线程的实现方式1.4 多线程的成员方法1.5 线程的生命周期 二、线程安全1.6 同步方法1.7 锁lock1.8 死锁1.8 生产者和消费者 (等待唤醒机制)1.9 等待唤醒机制(阻塞队列方式实现&#xff09;1…

IntelliJ IDEA汉化

IntelliJ IDEA汉化 描述解决办法 描述 在开发过程中&#xff0c;我们想让界面现实为汉语&#xff0c;那么我们就需要对IDEA工具进行汉化&#xff0c;目前版本的IDEA汉化都非常简单&#xff0c;请看下述实现步骤。 解决办法 下述汉化方法&#xff0c;全家桶软件都通用。 打开…

attention机制

油管attention机制解释 油管的attention机制视频。 基础形态 如下图所示&#xff0c;假设现在有4个向量&#xff0c; v 1 v_1 v1​到 v 4 v_4 v4​。我们以 v 3 v_3 v3​为视角&#xff0c;看它是怎么得到 y 3 y_3 y3​的。首先用 v 3 v_3 v3​和全部4个向量做点乘&#xff…

不依赖硬件,可以无限扩展的闹钟组件

在实际的开发项目中&#xff0c;很多时候我们需要定时的做一些事情&#xff0c;举例&#xff1a; ①路上的路灯&#xff0c;每天晚上6:00准时打开&#xff0c;每天早上6:00准时关闭&#xff1b;②定时闹钟&#xff0c;起床上班。这些行为其实都是定时任务–闹钟。 大部分单片机…

【MySql】数据库设计过程

目录 概念数据库设计&#xff1a; 逻辑数据库设计&#xff1a; 物理数据库设计&#xff1a; ->需求分析&#xff08;收集需求和理解需求,“源”&#xff09; ->概念数据库设计&#xff08;建立概念模型:"E-R图/IDEF1X"&#xff09; ->逻辑数据库设计&…

idle_in_transaction_session_timeout idle_session_timeout

这两个参数都是用来控制PostgreSQL数据库中会话的超时时间的。 idle_in_transaction_session_timeout idle_in_transaction_session_timeout参数用于控制在事务中处于空闲状态的会话的超时时间。如果一个会话在事务中处于空闲状态超过了指定的时间&#xff0c;则该会话将被终…