rhcsa学习3 文件

news2024/12/26 21:57:34

文件系统权限

有三种权限类别可应用:读取、写入和执行

查看文件和目录的权限及所有权

 ls -l 显示有关权限和所有权的详细信息

 长列表的第一个字符表示文件类型

- 表示常规文件、d 目录、l 软链接、其它字符代表硬件设备(b和c)或其他具有特殊用途的文件(p和s)

接下来的九个字符式文件权限。它们分为三组、每组三个字符分别对应:拥有该文件的用户权限、拥有该文件的组的权限、其他所有用户的权限。如果组中显示rwx,说明该类别具有读取、写入和执行三种权限。如果其中一个字母被替换为-,则表示该类别没有这个权限。

权限之后式链接数,链接数之后,第一个名称表示拥有该文件的用户,第二个名称表示拥有该文件的组。

 如上我们要注意:

a、用户database可以删除lfile1和lfile2两个文件,因为database1对包含这两个文件的目录具有写入权限( 如图. 的所有用户为database1)

b、用户database1是组consultant1的成员,该组对lfile2的权限为r--(可读),而lfile2的其他用户的权限为(rw-),database1是其他用户,但却只有读取权限,因为组权限具有优先权,即便其他用户具有写入权限

从命令行管理文件系统权限、

更改文件和目录权限

a、通过符号法更改权限

如下:

其他用户权限+x ,变成

 可以发现文件颜色变成绿色,(只要该文件具有x(u、g、o都可),这个可执行文件的权限,就会变成绿色,代表可执行文件

虽然目录的操作也是类似的,的那要注意的是目录下面还有文件的话,如果像上面一样操作则只会修改目录本身的权限,里面的文件则不受影响,如下:

而修改目录权限后,该目录下的文件权限没有任何变化(和上上图比较):

 所以再修改目录权限时,加上-R属性递归,将该目录下的文件的权限都可以修改(后面修改用户、用户组也是同样)

如上用户组的权限加上了可写。

 也可多个一起操作

 其中- + 也可用=替代

 但是一次只能操作一组权限,如果用a则时三组一样的权限

 发现不用写满(a=-w-)都可以

通过数值法更改权限

#代表一个数字,权限有三组所以优三个数字分别对应三组权限,没组权限的值由三种权限代表的数值相加得到

三种权限代表数值: r 为4,w为2,x为1(其中-为0)

如:rwx代表4+2+1=6

what目录的权限中,该三组权限分别计算(u :4+2+1=7、g:0+2+1=3、o:0+0+1=1)

所以该目录的权限表示为731

用数值设置权限:

 发现how变成绿色底,(只要其他用户权限中有w则会)

 更改文件和目录用户或组所有权(用chown命令)

我们知道新创建的文件由创建该文件的用户所有。默认情况下,新文件的组的所有权为创建该文件的主要用户组。

修改文件所有权  chown  修改后的用户名  文件名

 如果是文件直接可以这样修改,但是如果是目录这样修改后其子文件则不会有变化:

 要加上-R选项,才可以将子文件与目录的修改同步

用冒号分隔达到同时修改用户组和用户

(补充,也可用. 分隔,但是不建议,因为如果存在同名的带.的用户名,则无法达到同时修改的效果)而且如果不想修改所属用户,可以只是:或.  再加修改后的组名

当然也可单独修改用户组(用chgrp命令)

管理默认权限和文件访问

特殊权限(构成了除了基本用户、组和其他类型之外的第四种权限类型)

 (注意:s和t建立在已有x执行权限的基础上,如果有这两种权限却没有x则会在相应位置变成S和T

关于u+s

例如先查看passwd命令的绝对路径,再查看其所属文件的权限,不难发现原本再所属用户权限中x的位置变成了s,如果没有这个s,变成S或x会怎样呢?

 我们可以发现当没有s权限时,我们在普通用户去修改密码,即使输入正确,也无法操作成功,因为我们不是当前用户自己去修改,而是拥有该文件所有的root用户去执行修改。所以当我们没有s,则无法调用让root用户修改。

另一方面,当我们用passwd命令时,需要将密码写入/etc/passwd文件,上图我们可以看到,我们是没有权限去读取修改的,所以也可以知道只有root用户可以去执行。

 如果时S也是可以的

关于g+s

当我们对目录的所有组添加s权限时,如果对目录的拥有组进行了修改,则后面新建的内容也会同步。

 修改:

 我们可以发现新建的文件的拥有组同步成student,且新创建的目录会继承当前目录的属性(权限、拥有人、拥有组都相同)

该权限对新建的文件的影响:如果要用命令去操作该文件,则不是以运行命令的用户身份运行,而是以拥有该文件的组运行

o+t

表示只有文件所有者及root才能删除该目录文件

当what目录下的情况如下时,

 发现只有student和root用户可以删除what目录下的所有文件

而除二者以外的用户去删除里面非所有用户的文件时,则无法删除。

 

当我们去设置特殊权限时,除了字符表示(u+s、g+s、o+t)等,也可以曹勇数值表示,分别对应4、2、1。而且时位于最前面的数字

如图s表示4,放在三组权限数值的最前面即可表示

默认文件权限

创建新文件或目录时,会为其分配初始权限。有两个因素会影响这些初始权限(创建长规文件还是目录,当前的umask)

创建新目录,一般分配0777。常规文件一般时0666.

shell会话会设置一个umask,进一步限制初始设置的权限。例如:umask为0002可清除其他用户的写入位。0077清除创建文件的所有组和其他权限。

不带参数运行umask命令将显示shellumask的当前值

 umask 数字 表示修改umask的值,以student用户为例:

新创建的目录bag权限为0775( 初始0777-umask0002=0775)

新创建的文件pen.txt权限为664(初始0666-umask0002=0664)

当我们设置umask 为0004

新建文件file1权限为662(0666-0004=0662)

新建目录wen权限为773(0777-0004=0773)

但是我们这种设置umask的方式时临时生效的。我们重启可能就又失效了。

如图,重新登录后又时初始的0002 

用户的默认umask由shell启动脚本设置。默认情况下,如果账户UID为200以上,并且用户名和主要组名相同,则会分配一个值为002的umask,否则umask为022

该设置信息存在/etc/profile

 vim  /etc/profile查看

大概在59行的位置 可以找到相关信息

-gt 表示>       -lt  <         eq =          -gn 表示组名  -un表示用户名 

(ge大于等于,le小于等于,ne不等于)

 

按照上面的逻辑,root用户UID<199所以不满足该条件为0022

 如果要自己设置umask且达到一个永久的效果,则可以通过在/etc/profile.d的目录下创建一个脚本文件,文件名可自取,的那建议规范一点。shell启动该脚本来更改此设置。

脚本内容按照上面逻辑

vim /etc/profile.d/local-umask.sh

 保存后,要让该脚本可被执行,所以要设置一下权限

 要启动该脚本,则直接 写该路径即可

之后我们来看此时root的umask,按照上图逻辑UID<199,umask为007,所以root应该为007。

记得要重新登录root才可生效。

 我们可以发现,student用户也变了,为0022,说明我们设置成功,记得除了UID号还有一个条件是用户名=用户组名(所以看到即使UID>199也未必是0022)

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

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

相关文章

内推与面试:内部推荐如何影响面试结果

&#x1f337;&#x1f341; 博主猫头虎&#xff08;&#x1f405;&#x1f43e;&#xff09;带您 Go to New World✨&#x1f341; &#x1f984; 博客首页——&#x1f405;&#x1f43e;猫头虎的博客&#x1f390; &#x1f433; 《面试题大全专栏》 &#x1f995; 文章图文…

HHDBCS表管理简介

HHDBCS支持新增、打开、删除、级联删除、清空、级联清空、重命名、属性查看等操作。 1 新增 右键树形结构的表节点&#xff0c;在弹出菜单中选择“新增”&#xff0c;会弹出创建表的表单&#xff0c;可以输入表名称&#xff0c;注释&#xff0c;点击添加列&#xff0c;输入列…

mysql基础面试题

创建表 列名以及列的类型前后顺序 三种等号 <>&#xff0c;&#xff0c;: mysql中0是不是null slq语句的执行顺序 别名的两种方法 关键字用途 order by group by desc/asc having___条件筛选 几个重要的集合函数 sum.aVG.min.max.count SQL 什么语言 什么是结构化 数据表…

深入解析Spring Boot中最常用注解的使用方式(上篇)

摘要&#xff1a;本文将详细介绍Spring Boot中最常用的注解的使用方式&#xff0c;并通过代码示例加以说明。通过学习这些注解&#xff0c;读者将能够更好地理解和运用Spring Boot框架&#xff0c;构建高效的企业级应用。 目录 第一部分&#xff1a;常见的控制器注解1.RequestM…

电子心率检测仪语音报警芯片,DAC输出语音ic,WT588F02B-8S

随着医疗科技的不断发展&#xff0c;电子医疗设备已经成为提高健康管理和医疗效率的重要工具。在这个领域&#xff0c;深圳唯创知音推出了全新的WT588F02B-8S DAC输出语音IC&#xff0c;为电子心率检测仪等产品提供卓越的语音报警功能。这一创新的产品将为医疗行业和健康监测市…

Multisim14.0仿真(八)LM555制作流水灯

一、仿真原理图&#xff1a; 二、仿真运行效果&#xff1a;

cesium创建基本的实体、点、线、多边形(vue)

1.通过viewer实例的entities对象实现 实现代码&#xff1a; <template><div id"container"></div> </template><script> import * as Cesium from cesium/Cesium import "cesium/Widgets/widgets.css" export default {mo…

Termux配置bashrc,终端长路径改为短路径

Termux配置bashrc termux的bashrc在$HOME/../usr/etc目录下 先使用cd命令进入用户主目录 然后cd ../usr/etc&#xff0c;ls可以发现&#xff0c;存在一个名为bash.bashrc的文件 使用vim或者其它编辑器打开 大概在第15行 PS1\[\e[0;32m\]\w\[\e[0m\] \[\e[0;97m\]\$\[\e[0…

帆软报表执行sql报SQL command not properly ended

如果你在执行预览SQL时报如下图的错误&#xff1a; 你需要检查一下几点&#xff1a; 1.是否在SQL在有逗号忘记加了 2.是否有括号少了 3.是否在SQL的最后有分号存在&#xff0c;如果有需要去掉&#xff0c;这点是比较坑的&#xff0c;因为SQL最后加分号在oracle数据库中是能够…

Android MQTT:实现设备信息上报与远程控制

Android MQTT&#xff1a;实现设备信息上报与远程控制 1. 介绍 1.1 MQTT是什么&#xff1f; MQTT&#xff08;Message Queuing Telemetry Transport&#xff09;是一种轻量级的消息传输协议&#xff0c;最初由IBM开发&#xff0c;用于连接远程设备与服务器之间的通信。它在物…

5大LOGO免费在线生成器,从此设计不求人!

hi&#xff0c;大家好我是技术苟&#xff0c;每天晚上22点准时上线为你带来实用黑科技&#xff01;由于公众号改版&#xff0c;现在的公众号消息已经不再按照时间顺序排送了。因此小伙伴们就很容易错过精彩内容。喜欢黑科技的小伙伴&#xff0c;可以将黑科技百科公众号设为标星…

19-springcloud(中)

一 服务注册发现 1 什么是服务治理 为什么需要服务治理 在没有进行服务治理前,服务之间的通信是通过服务间直接相互调用来实现的。 过程&#xff1a; 武当派直接调用峨眉派和华山派&#xff0c;同样&#xff0c;华山派直接调用武当派和峨眉派。如果系统不复杂&#xff0c;这样…

vue3+vite项目运行报错[plugin vite:dep-pre-bundle]

报错截图 原因&#xff1a;vue-i18n 插件于9.5更新&#xff0c;打包和引入方式有改变&#xff0c;所以新启动和新部署的项目都会有这个问题。 解决方式&#xff1a; 1.项目全局搜索&#xff1a;vue-i18n/dist/v ue-i18n.cjs.js 然后将搜索到的代码替换为 &#xff1a;vue-i18…

代码泄漏无感知?代码安全审计构筑企业核心资产安全防线

目录 一个不眠之夜 源代码托管&#xff1a;最容易被从内部攻破的堡垒 审计事件&#xff0c;构建源代码安全防护的“最后一道防线” 源代码托管审计事件三要素 源代码托管审计事件的价值 极狐GitLab 审计事件功能 极狐GitLab 审计事件功能特点 极狐GitLab 审计事件功能使…

什么牌子的led台灯质量好?热门的Led护眼台灯推荐

led台灯有环保无污染、耗能低、长寿命等优点&#xff0c;适合用在阅读、书写、批阅等办公或学习的场所。而挑选LED台灯时&#xff0c;分散光挡板做的比较好的优先选择&#xff0c;能分散大量蓝光&#xff0c;对眼睛危害较小。下面&#xff0c;小编为大家推荐五款质量好的led护眼…

几个步骤轻松把PDF转成Excel,你学会了吗

在工作和学习中&#xff0c;我们经常需要将PDF文档中的表格转换为Excel表格&#xff0c;以便进行进一步的编辑和分析。本文将介绍几个简单的步骤&#xff0c;帮助您快速将PDF转换为Excel&#xff0c;并提供一些需要注意的实现方法。 步骤一&#xff1a;选择合适的PDF转Excel工具…

基于SSM的教务管理

✌全网粉丝20W,csdn特邀作者、博客专家、CSDN新星计划导师、java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ &#x1f345;文末获取项目下载方式&#x1f345; 一、项目背景介绍&#xff1a; 我们的系统是一个现代…

创新领航 | 竹云产品入选“年度优秀创新软件产品推广目录”

8月31日&#xff0c;由中国电子信息行业联合会主办的第二十五届中国国际软件博览会在天津拉开帷幕&#xff0c;本次大会以“塑造软件新生态 赋能发展新变革”为主题&#xff0c;为全国乃至全球软件行业高质量发展聚智聚“力”。 大会发布“2022-2023年度优秀创新软件产品推广目…

Alpha 测试与 Beta 测试

Alpha测试 Alpha测试 是由用户在 开发环境下 进行的测试&#xff0c;也可以是开发机构内部的用户在模拟实际操作环境下进行的测试。开发者坐在用户旁边&#xff0c;这是在开发者受控的环境下进行的测试。由开发者随时记录下错误情况和使用中的问题。 Beta测试 Beta测试 是由…

Python实现SSA智能麻雀搜索算法优化LightGBM分类模型(LGBMClassifier算法)项目实战

说明&#xff1a;这是一个机器学习实战项目&#xff08;附带数据代码文档视频讲解&#xff09;&#xff0c;如需数据代码文档视频讲解可以直接到文章最后获取。 1.项目背景 麻雀搜索算法(Sparrow Search Algorithm, SSA)是一种新型的群智能优化算法&#xff0c;在2020年提出&a…