Linux权限概念

news2024/12/27 12:23:34

目录

Linux权限的概念

什么是权限

如何去操作权限

设置文件所属角色

设置文件属性

umask

粘滞位


Linux权限的概念

首先我们要了解到,在linux下有两种用户:超级用户(root)和普通用户。超级用户的命令提示符是“#”,普通用户的命令提示符是“$”!

见名知其意,超级用户在linux下做的任何事情不会受到限制。而普通用户,在linux下可做的事情则是有限的。当你需要切换用户时,需要用到su [用户名]来切换用户!

这里注意一下,当你输入密码的时候是看不到的,正常输入即可。上述的用户切换过程也体现了超级用户的“特权”,就好比“神”一样的存在!但是,我们大多数人在生活中都是平凡的小角色,在未来的工作当中使用linux也是普通用户,这个时候我们可以处理的问题就是有限的,难道每当我们遇到需要root身份才能执行的命令就去找领导要root账号吗?可不可以不切换用户,让普通用户以root的身份执行相应的命令。答案是可以的,面对上述场景,只需用sudo [命令]来进行短暂的提权即可:

 权限被拒绝的原因:

 使用sudo 提权:

输入普通用户的密码为什么就可以提权到root身份进行一些命令操作了呢,这不存在风险吗?其实这个机制存在的价值就是给受信任的用户减少执行障碍,提供最大的便利!就好比你把这个用户写进了“白名单”只要他忠心于root就可以给他最大的便捷。反之不信任的用户没有这一特权!

 sodoers文件就相当于领导的小本本,把当前用户写到sodoers文件中就能得到系统的信任,这里暂时不做处理,zxy没有添加到sudoers中,所以不能完成提权的操作。在后面的学习中在探索如何将用户写到“白名单”中。

什么是权限

简单来说,权限限制的就是一件事情是否允许被,权限约束的是一个人或者是某些群体。我们在生活中都扮演着不同角色,就好比学生这个身份,因为这个身份才有了进入学校学习的权利,并不因为我是张三就能进入学校!就好比我想在学校里读书或者唱KTV,前者读书是学校提供的“业务”,而后者唱KTV是学校没有的属性。在linux下的文件访问中,访问者的身份可能不同,文件的类型和访问权限也可能不同:

角色:

●拥有者:文件和文件目录的所有者!

●所属组:和拥有者同在一个小组的用户!

●其他人:其它用户!

 如上图所示,张三家和李四家就是两个用户组张三和李四分别有一个文件,他们对于文件而言就是拥有者他们组内的用户属于用户组中的一份子,而李大对于张三的文件而言就是其他人(others),张三家的人对于李四的文件而言也是其他人(others)。这里还要提一下root,上面说过它不受任何限制,所以root可以去它任何想去的地方。

文件属性: 

●文件类型

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

在windows中我们经常通过文件的后缀来判断文件的类型。在linux中与之不同,文件的类型由文件属性的第一列确定,与文件后缀无关,所以在linux下创建文件时可以不用加后缀,如果你想将后缀作为符号给用户一个提示也是一个很好的习惯,但这时要注意你写的后缀也是文件名中的一部分。

为了验证后缀和文件类型有无关系你可能会想到这样的反例:

上述示例对后缀有要求的原因是gcc工具对文件后缀的要求,和我们谈论的linux下文件类型和后缀无关并不冲突。

●基本权限

r读权限: Read对文件而言,具有读取文件内容的权限;对目录来说,具有浏览该目录信息的权限
w写权限: Write对文件而言,具有修改文件内容的权限;对目录来说具有删除移动目录内文件的权限。
x可执行权限: execute对文件而言,具有执行文件的权限;对目录来说,具有进入目录的权限。
-无权限:没有权限!

字符表示文件权限:

 8进制数值表示:

如何去操作权限

设置文件所属角色

chown:修改文件或目录的拥有者

chgrp:修改文件或目录的所属组

下图中的操作都是以root用户进行操作的:

 用普通用户修改文件的拥有者和所属组不被允许!

设置文件属性

chmod:设置文件的访问权限

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


●八进制方案

 

umask

当我们创建一个文件或者目录的时候,它们都有默认的权限:

这些默认权限是怎么来的,真相只有一个:系统会默认配置好umask权限掩码,凡是在umask中出现的权限,需要在起始权限中去掉。linux中规定,目录的起始权限是777,文件的起始权限是666,超级用户默认掩码是022,普通用户默认掩码是002!

最终权限的计算方法:最终权限 = 起始权限&(~umask) 

粘滞位

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

基于上述关于目录权限的描述,产生了这样的问题:只要用户拥有了目录的写权限,就可以对文件进行删除操作,如果有一天用户A不小心删除了用户B写的“机密文件”,就会带来很大的问题!这个机制好像不太合理。

 为了解决上述问题,linux引进了粘滞位的概念,当一个目录被设置粘滞位(chmod +t),则目录下的文件只能由超级管理员、文件或者目录的所有者对其进行删除!

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

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

相关文章

亚马逊测评自养号需要注意的五点

一.有自己的一套环境系统市场上有很多系统,但很多都是现成的或软件包,没有解决风控的能力,这个还需要大家自己甄别的哈,如果有需要建议大家自己学习一套,把技术掌握在自己手里,这样不会有依赖性&#xff0c…

零基础、学历无优势、逻辑能力一般”,能转行做程序员吗?

此前,拉勾数据研究院对程序员群体做了一次深入调查,并发布了《2022程序员群体职场洞察报告》,报告显示,“高薪”依然是程序员的职业标签之一。 在调查的程序员群体中,年薪在10-30万元之间的人数占比为66.7%&#xff0…

V4l2框架基础知识(三)

V4L2框架概述 V4L2框架主要部分组成: V4L2_device:管理所有设备; media_device:media_device框架管理运行时的pipeline; V4L2_device 这个是整个输入设备的总结构体,可以认为他是整个V4L2框架的入口,由该…

分享53戏源代码总有一个是你想要的(亲测每一个均可用)

收集整理不容易老铁支持我动力! 53戏源代码下载链接:https://pan.baidu.com/s/1MI_EvHNFKoUu-l8LR6MAmg?pwdass5 提取码:ass5 下面是项目的名字,我放了一些图片,大家下载后可以看到。 c#版植物大战僵尸 H5纸牌接龙…

猿人学 第十六题

使用XHR断点找到XHR发送位置向上跟栈,会发现在ajax中发现m已经生成,向上追踪代码继续向上追,发现m在i中出现,并在r.m中生成进入n[e(528)]方法,发现作用只是返回e(t)p_s为获取当时时间的方法 btoa为方法点击进入btoa方法…

玩机搞机------高级改良型高通工程线制作方法。

很多普通玩家对工程线的定义还停留在早期短接红绿端的操作认知上。例如这个 常规制作工程线 或者短接主板触点方式 今天给大家描述的是更高级改良型的工程线。因为前期的这种工程线对于米6或者其他同时期机型已经不起任何作用。后期机型进入高通edl模式就需要拆机手动短接主板触…

pytorch各种版本最简单安装,不用自己安装cuda cudnn

pytorch各种版本 pip 安装命令 查看官网 https://pytorch.org/get-started/previous-versions/ conda pytorch 安装 1、安装conda, 2、创建并并激活虚拟环境 - conda create -n pytorch_1.7 python3.7 - conda activate pytorch_1.7 3、虚拟环境中 pip 安装想要的…

升级Room引发的惨案!!

kotlin升级 在升级kotlin的时候,直接升级到大版本的kotlin(比如1.7以上),直接报错,只是报错不知道原因。 koltin Release details 后来把koltin版本改成1.6.0,报如下的错,我们才知道gradle是需…

积水内涝监测——埋入式积水终端设备介绍

一、设备概述 埋入式积水终端是针对城市内涝推出的积水信息监测采集设备,采用超声波传感技术,对积水的深度进行精确的测量。产品能够在低温、腐蚀环境下可靠运行本产品特别适用于智慧城市中,对城市道路、社区低洼处的积水进行实时监测上报到…

(十)、通过云对象修改阅读量+点赞功能的实现【uniapp+uinicloud多用户社区博客实战项目(完整开发文档-从零到完整项目)】

1,通过云对象importObj修改阅读量 1.1 新建云对象 1.2 云对象中写自增自减方法 封装云对象utilsObj中的自增自减方法,方法名取为operation,传递4个参数。 // 云对象教程: https://uniapp.dcloud.net.cn/uniCloud/cloud-obj // jsdoc语法提…

火山引擎数智平台的这款产品,正在帮助 APP 提升用户活跃度

更多技术交流、求职机会,欢迎关注字节跳动数据平台微信公众号,回复【1】进入官方交流群 你有没有关注过 APP 给你推送的消息? 出于提升用户活跃度的考虑,APP 会定期在应用内面向用户进行内通推送,推送形式既包括 APP …

查看jdk安装路径,在windows上实现多个java jdk的共存解决办法,安装java19后终端乱码的解决

查看jdk安装路径, 在windows上实现多个java jdk的共存解决办法, 安装java19后终端乱码的解决 目录 一、查看jdk(java开发工具包)安装路径的方法 二、在windows上实现多个java jdk的共存 (1)、安装好多…

【数据宝应用场景】智慧工地哪些场景需要用到哪些大数据?

近几年来,我国施工安全管理日趋严格,人力成本逐渐提升,人力成本压力逐渐增加,通过大数据、物联网、云计算和智能设备等软硬件信息化技术能有效提升工地的生产效率、管理效率等,实现工地的数字化、精细化、智慧化管理&a…

WGCNA | 值得你深入学习的生信分析方法!~(网状分析-第四步-模块的功能注释)

1写在前面 前面我们用WGCNA分析得到多个模块,其中有一些模块和我们感兴趣的表型或者临床特征是相关的。🥳 接着就是要做模块的富集分析了,帮助我们了解这些模块的基因都有哪些已知的功能,涉及到哪些通路,在哪些疾病中最…

贪心算法-蓝桥杯

一、贪心算法的优缺点优点:1.容易理解:生活常见。2.操作简单:在每一步都选局部最优。3.效率高: 复杂度常常是O(1)的。缺点:1.局部最优不一定是全局最优。二、例子: 最少硬币问题硬币面值1、2、5。支付13元,要求硬币数量最少。贪心法: (1) 5元…

工程项目管理系统源码之工程项目管理系统面临的挑战

​ ​工程项目管理系统是指从事工程项目管理的企业(以下简称工程项目管理企业)受业主委托,按照合同约定,代表业主对工程项目的组织实施进行全过程或若干阶段的管理和服务。 ​系统定义 工程项目管理企业不直接与该工程项目的总承包…

电商项目之电子账户的收单模式

文章目录1 问题背景2 前言3 什么是电子账户支付方式4 什么是收单模式5 电子账户有哪些收单模式5.1 Direct Pay模式5.2 Auth Capture模式5.3 ESCOW模式6 区别1 问题背景 笔者从事电商开发有1年多,对接了10几个信用卡支付方式,也接触了像PayPal这种电子账户…

零基础学习测试还是开发?

软件测试作为IT行业的刚需职位,其实是非常适合0基础的小白同学加入学习的但是具体选择测试还是开发还是要看你个人的兴趣爱好以及学习能力,对哪个感兴趣,哪个能学的会就选择哪个就可以了 平时说起程序员印象中大都是做Java、做前端、做后端&…

春招Leetcode刷题日记-D4-双指针算法-滑动窗口快慢指针

D4-双指针算法-滑动窗口&&快慢指针快慢指针算力扣141. 环形链表思路代码力扣142. 环形链表 II思路代码滑动窗口力扣76. 最小覆盖子串思路代码力扣424. 替换后的最长重复字符思路代码快慢指针算 快慢指针算法,多用于链表当中,常见的如&#xff1…

Java锁相关知识

目录 线程安全 对象头Mark 偏向锁 轻量级锁 减少锁持有时间 减小锁粒度 锁分离 锁粗化 锁消除 无锁自旋锁 线程安全 多线程访问ArrayList 多线程网站统计访问人数,是否需要精确统计&#xff1f;如果不需要&#xff0c;可以不进行加锁 public static List<Integ…