Linux权限解析

news2024/11/17 13:28:53

一、Linux用户分类

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

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

二、文件访问者分类

文件是否允许被访问与访问者的“属性”有关,“属性”可以分为如下三类:

  • 文件和文件目录的所有者:u——User
  • 文件和文件目录的所属组:g——Group
  • 其他用户:o——Other

三、文件类型和访问权限

在目录下用ll指令来查看文件夹中文件的详细信息可以看到如下情况:

 以第一条dir的查询结果为例,其中的字母都是如下的含义:

 1.文件类型

Linux中文件类型有很多种,在文件详细信息中,一般用第1位来表示文件类型。如上图中的第1块。一般d和-最为常见

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

2.基本权限 

Linux中文件的权限分为三种:

  • r :读权限——对于文件指可以查看文件内容;对于目录指可以浏览该目录信息
  • w:写权限——对于文件指可以改写文件内容;对于目录指对目录中的文件有创建、修改、删除、移动的权限
  • x :执行权限——对于文件指可以执行该文件;对于目录指可以进入该目录
  • - :无权限

1).字符表示权限

在文件的详细信息查询时,查询结果用这种方式表示,也就是上文图中显示的表示方式

Linux表示说明Linux表示说明
r--只读-w-只写
--x仅可执行rw-可读写
r-x可读和执行-wx可写和执行
rwx可读可写可执行---没有任何权限

2).8进制表示权限

文件权限也可以用8进制数值来表示,后续的权限修改中可以用到这种方法

权限符号八进制二进制
r--4100
-w-2010
--x1

001

rw-6110
r-x5101
-wx3011
rwx7111
---0000

3.文件访问权限的相关设置方法

1).修改权限

命令:chmod

功能: 设置文件的访问权限
格式: chmod [ 参数 ] 权限 文件名
常用选项:
  • R -> 递归修改目录文件的权限
  • 说明:只有文件的拥有者和root才可以改变文件的权限
  • chmod命令中权限的格式其一:用户表示符+/-=权限字符

修改符号:

  • +:向权限范围增加权限代号所表示的权限
  • -:向权限范围取消权限代号所表示的权限
  • =:向权限范围赋予权限代号所表示的权限

用户符号:  

  • u:拥有者
  • g:拥有者同组用
  • o:其它用户
  • a:所有用户

示例: 

chmod u+w /home/abc.txt #给abc.txt加上写权限
chmod o-x /home/abc.txt #给abc.txt去掉执行权限
  • chmod命令中权限的格式其二:三位8进制数字

示例:

chmod 664 /home/abc.txt  #拥有者和所属组权限为读写,other权限为读
chmod 640 /home/abc.txt  #拥有者权限为读写,所属组权限为读,other没有任何权限

2).修改拥有者

命令:chown

功能: 修改文件的拥有者
格式: chown [ 参数 ] 用户民  文件名

示例: 

 chown user1 f1  #f1文件拥有者修改为user1

3).修改所属组

命令:chgrp

功能: 修改文件的所属组
格式: chgrp [ 参数 ] 用户民  文件名

 4.权限掩码

我们再来看这张图,可以发现在刚刚创建时,系统给目录的权限是775,给文件的权限是664。接下来告诉大家系统如何给定刚刚创建文件的权限。

操作系统存在掩码——umask,如图系统初始默认掩码是002。

文件创建之后我们看到的是最终权限,而实际上文件还有默认权限,最终权限是通过默认权限和掩码的一系列操作之后得到的,具体操作如下:

最终权限 = 默认权限 & (~umask)

  • 注:最终得到的效果就是在掩码中出现的权限,在最终权限中不会出现

目录的默认权限是777,文件的默认权限是666。掩码002去掉了other的写权限,所以得到最终权限目录为775,文件为664.

5.粘滞位

共享目录中,为了防止用户删除他人的不属于自己的文件,需要给共享目录加上粘滞位。从而实现在此目录中,用户只能删除自己创建的文件

添加粘滞位的方法:

chmod +t /home  #给home目录加上粘滞位

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

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

相关文章

6.6面向对象继承

2. 面向对象特征二:继承(Inheritance) 2.1 继承的概述 说到继承我们会想到什么 在Java面向对象程序设计中的继承,多个类中存在相同属性和行为时,将这些相同的内容抽取到单独一个类(父类)中,然后所有的类继…

【备战秋招】每日一题:4月15日美团春招第二题:题面+题目思路 + C++/python/js/Go/java带注释

为了更好的阅读体检,为了更好的阅读体检,,可以查看我的算法学习博客第二题-分糖果 在线评测链接:P1236 题目内容 某天,塔子哥去商店买了两种不同口味的糖果,分别买了 a 个和 b 个。当他回到家时,他发现他…

IDE/以glog为例实践CMake-Gui工具使用

文章目录 概述构建glog编译glog.sln解决方案glog的配置项BUILD_SHARED_LIBSBUILD_TESTINGCMAKE_CONFIGURATION_TYPESCMAKE_INSTALL_PREFIXWITH_GTESTGTest_DIRWITH_GFLAGSgflag_DIRPRINT_UNSYMBOLIZED_STACK_TRACESWITH_SYMBOLIZEWITH_FUZZINGWITH_THREADSWITH_TLSWITH_GMOCKWI…

3分钟了解如何做好项目管理和协作

目录 介绍 什么是项目管理 项目管理三要素 时间 成本 质量 项目启动阶段项目启动负责人要了解四个问题 项目规划阶段 任务分解->任务优先级安排->计划呈现->风险控制 快速呈现项目工作计划 项目启动:信息同步任务分工高效 项目跟踪&#xff1a…

实战:用docker-compose容器化springboot项目

文章目录 前言技术积累docker-compose定义docker-compose文件参数docker-compose命令 实战演示1、创建挂载路径2、编写docker-compose.yml3、启动并管理容器 写在最后 前言 前面我们学习和实战了用dockerfile构建镜像,通过镜像可以任意在docker环境容器化部署项目。…

C++静态联编和动态联编

目录 2.1静态联编 2.2动态联编 2.3虚函数面试题 2.3.1构造函数中使用memset函数 2.3.2this指针与虚函数的调用 2.3.3构造析构函数中调用虚函数 2.3.4动态和静态联编与访问属性和默认值 2.3.5动态创建对象时的析构函数 联编是指计算机程序彼此关联的过程,是把…

Fiddler汉化成功

我安装的fiddler 操作系统是:Win10 64Bit 操作系统的版本号是:v5.0.20194.41348 for .NET 4.6.1 fiddler下载地址: 我用夸克网盘分享了「02-Web调试工具-FiddlerSetup.exe」,点击链接即可保存。 链接:https://pan.quar…

什么是项目里程碑?如何为项目成功设置?

高速公路上每隔一公里就有一个标志牌,这表明你需要进一步行驶才能到达目的地的距离。虽然没有这些标志你也可以到达目的地,但它们的存在使你放心,让你确信走在正确的道路上。 项目里程碑在项目管理中也有同样的作用。当你的项目实现目的时&a…

Linux内核学习----整体概览

目录 1、概述 2、核心抽象及设计选型 2.1. 对进程和内核的抽象 2.2. 对进程地址空间的抽象 2.3. 支持可重入可抢占的内核 2.4. 放松管控与努力回收 2.5. 单块结构内核动态加载模块 2.6. 为系统中的一切活动打拍子 2.7. 一切皆文件的理念 3、Linux整体架构模块说明 3.…

对C++中const的说明

对C中const的说明 在C中,const是一个关键字,用于指定对象或变量是只读的,即不可修改。它可以应用于不同的上下文中,包括: 对象和变量声明:通过在变量或对象的声明前加上const关键字,可以将其标…

ACL2022 Document-Level Event Argument Extraction via Optimal Transport

Document-Level Event Argument Extraction via Optimal Transport 论文:https://aclanthology.org/2022.findings-acl.130/ 代码:- 期刊/会议:ACL 2022 摘要 事件论元抽取(EAE)是事件抽取的子任务之一&#xff0c…

智驾传感器新风向!拐点将至

“大家都比较关注激光雷达,尤其是在今年整个行业聚焦降本的大背景下,这个赛道还行不行?”6月8日,2023年度(第十四届)高工智能汽车开发者大会上,高工智能汽车研究院首发《2023-2025年中国汽车市场…

【备战秋招】每日一题:4月29日美团春招第三题:题面+题目思路 + C++/python/js/Go/java带注释

为了更好的阅读体检,为了更好的阅读体检,,可以查看我的算法学习博客第三题-酒王 在线评测链接:P1268 题目内容 塔子哥和他的朋友们共 n 人是一群热爱生活的年轻人,他们经常在一起吃饭,聊天,玩游戏。有一…

预设Preset简单使用

作用 是一个资源文件。可以保存组件、资源、项目设置的属性,将属性应用到组件、资源、项目设置上。 例如,创建一个Transform预设,可记录Transform的属性,其他Transform应用预设,会使用预设中的数据。 文档 预设 预设…

【Vue全家桶高仿小米商城】——(二)Git安装与配置

文章目录 第二章:Git安装和配置一、Windows/Mac/Linux安装二、环境变量配置、开发工具配置Windows - 环境变量Mac/Linux - 环境变量VSCode配置Git使用 VScode git,提交到仓库 三、存储密码 - SSH添加秘钥Git配置命令遇到的问题 四、Git常用命令 第二章&…

新手怎么注册速卖通及其流程?图文详解版不信你还不会!

龙哥发现最近讨论速卖通的人还挺多的,今天龙哥就给大家讲一下新手注册速卖通的流程,特别是需要你提前准备好的资料。感兴趣的朋友接着往下看吧! 速卖通店铺注册条件 1、营业执照、商标 速卖通要求注册商家必须具备合法的企业身份或个体工商户…

浅谈职场中的工作失误

浅谈职场中的工作失误 关于职场中的工作失误如何处理失误一点感言 笔者在一家软件公司从事传统的数据运维工作,也有十年之久了。十年的数据运维工作,真是一步一个脚印,一步一个坑踩出来的,也没想到这一干就是十年… 关于职场中的…

SeqTrack: Sequence to Sequence Learning for Visual Object Tracking

摘要 在本文中,我们提出了一种新的序列到序列学习框架的视觉跟踪,称为SeqTrack。它将视觉跟踪转换为一个序列生成问题,它以自回归的方式预测对象边界盒。这与之前的Siamese跟踪器和transformer跟踪器不同,它们依赖于设计复杂的磁…

【活动访谈】发力数字基座 推动物联创新—航天科技控股集团AIRIOT4.0平台发布会活动专访

近日,由航天科技控股集团股份有限公司主办的“数字基座 智慧物联—AIRIOT4.0平台发布会”在北京圆满落幕。航天三院科技委总工程师王连宝应邀出席本次会议并接受媒体采访,共同参与访谈的还有AIRIOT产品研发创始人、航天科技控股集团股份有限公司智慧物联…

python生成日报

目录 一&#xff1a;日报生成工具二&#xff1a;日报工具使用方式三&#xff1a;最终日报生成展示 一&#xff1a;日报生成工具 #!/usr/bin/python # coding:utf8class GetHtml(object):def __init__(self):self._html_head """<html><body style&qu…