Linux操作系统权限相关问题(一站式速通权限)


### *sudo命令的作用*


不切换用户,就想让普通用户以root的身份,执行对应的指令


输入密码时,输入的是自己普通用户的密码,而不是root的密码!!!


sudo可以进行短暂的提权,在最一次验证完成之后,短时间内可以用sudo命令进行相关操作,不用输密码,直接提权。


### *使用sudo命令的前提*


能使用sudo命令是因为,把相关的用户信息写进了系统的白名单(将当前用户添加到/etc/sudoers中),从此系统完全相信该用户,可以任意修改文件。


### ***关于sudo的常见问题***


问题:在提权的时候,为什么输入的是自己用户的密码,而不是root账户的密码  
 解释:给受信任的用户,提供最少的执行障碍。


问题:为什么都添加进系统白名单了,不直接用root


解释:(压岁钱的例子)系统完全相信用户,但是不代表放弃不相信用户的权力,sudo就代表用户向操作系统索要权力,但是系统可以制止!!!



> 
> ## 二、如何理解Linux系统中的权限
> 
> 
> 


### ***什么是权限?***


文件权限:人+文件属性


拿文件来说,文件权限可以分为两个部分:人和文件属性。文件可能只允许特定的人访问,除了限定人之外,文件的属性也是一个重要的方面,文件的属性可能是只读,也可能是可读可写。我们可以通过把对文件权限的理解延伸到Linux操作系统层面(Linux操作系统下一切皆文件):


角色:所有者(owner)、所属组(grouper)、其他人(other)。


***问题:为什么角色就这三种,Linux操作系统又是一个多用户操作系统,它们之间冲突吗?***


解释:用户只是操作系统中用户的具体体现,每个用户在操作系统中都被赋予相应的角色,系统通过对角色的限制来实现权限的控制。它们不仅不冲突,而且关系紧密。


***问题:为什么会出现所属组的概念***


解释:在默认情况下,文件的所属组和所有者是同一个人,所属组就是小组的概念,也就是说,可以把这个文件给自己小组内部的成员查看,除了自己和自己的小组成员,其他人就都是other,没有查看的权限。


示例:在一个公司内部,只有一台Linux机器,有A、B两个小组要进行相同项目的开发工作,两个组之间的开发是独立的,若是A组的程序员写好一份代码,想要给小组的其他成员看,但是不想给B组看,就需要引入“所属组”的概念才能实现。


### ***文件属性***


Linux系统下的文件类型与Windows系统下的文件类型差别很大


Linux系统不会识别文件的后缀,如果要使用文件后缀,仅仅是给用户做一个提示符号来使用,后缀本质是文件名的一部分。


Linux的文件类型是用"ll"指令在命令行中显示的第一列


#### *Linux文件类型*


1.-:普通文件(源代码、库文件、可执行程序、文件压缩包等等)


2.d:目录文件


3.c:字符设备文件-----比如:键盘,显示器....


4.b:块设备---磁盘


5.l:链接文件----快捷方式


6.p:管道文件


#### *Linux系统中文件的权限*


#### 0217752072fb44daa018cbe8efc7fea3.png


文件属性前面有10个字符,第一个字符我们已经知道是文件属性,后面的9个字符其实需要3个3个地放在一起看,它们分别代表所有者(owner)、所属组(grouper)、其他人(other)的相应权限。





 文件权限 
 | 读取权限(read) | 表示文件是否可以被读取。如果一个用户没有读取权限,那么他就无法查看该文件的内容。 |
| 写入权限(write) | 表示文件是否可以被修改。如果一个用户没有写入权限,那么他就无法更改该文件的内容。 |
| 执行权限(execute) | 表示文件是否可以被执行。对于可执行文件,执行权限允许用户运行该文件。对于目录,执行权限允许用户进入该目录并访问其内容。 |


例如-rwxrwxr-x的含义就是,这是一个普通文件,owner和grouper都具有读写和执行权限,other只具有读、执行的权限。


如果我们没有相应的权限而去对文件进行相关操作,命令行中会显示Permission denied



> 
> ## 三、如何操作权限?
> 
> 
> 


设置文件属性/设置文件所属角色:chown/chgroup


设置文件属性可以采用ugo+rwx方案,还可以采用八进制修改法


八进制修改法:假定有权限为1,无权限为0.与rwx相对应,如果要设置owner只有读的权限,对应下来就是2^2 = 4,也就是假定每一位都是二进制位,进行转换即可,


### ***为什么要有权限?***


Linux操作系统是一个多用户操作系统,要保证多个用户在同时使用的时候,不能相互影响,Linux权限存在的目的就是便于我们进行安全管理。


### ***为什么我们创建的目录或者是普通文件,默认权限是我们所看到的这个样子???***



drwxrwxr-x. 2 用户名 所属组 6 Jan 20 02:40 dir//目录
-rw-rw-r–. 1 用户名 所属组 0 Jan 20 02:40 file.txt//普通文件


就像上面这样,我们新创建一个文件或者目录,系统自动为我们分配了权限,为什么会这样分配权限呢?


Linux系统规定:目录的起始权限是777,普通文件的起始权限是666【均为八进制形式】


但是我们发现,如果是这样的,那么目录和文件的权限应该分别是rwxrwxrwx和rw-rw-rw-,这与我们创建出来的文件权限的文件类型还是有差异


其实在起始权限之外,还存在着**权限掩码**



$ umask
0002//八进制:每一位代表三个比特位,第一位无实义
//系统会默认配置好umask权限掩码,凡是在umask中出现的权限,都必须在起始权限中去掉


把002转化为二进制形式,即:000   000   010,把777转化为二进制形式,即:111   111   111


在目录的起始权限777中把other的写的权限去掉,就变成了111   111   101,即为775【rwxrwxr-x】.同理,在普通文件的起始权限666中把other的写的权限去掉,就变成了110   110   101.即为665【rw-rw-r--】




为了做好运维面试路上的助攻手,特整理了上百道 **【运维技术栈面试题集锦】** ,让你面试不慌心不跳,高薪offer怀里抱!

这次整理的面试题,**小到shell、MySQL,大到K8s等云原生技术栈,不仅适合运维新人入行面试需要,还适用于想提升进阶跳槽加薪的运维朋友。**

![](https://img-blog.csdnimg.cn/img_convert/b0d3e3edaa7054fd9c436cf73e67d7ed.png)

本份面试集锦涵盖了

*   **174 道运维工程师面试题**
*   **128道k8s面试题**
*   **108道shell脚本面试题**
*   **200道Linux面试题**
*   **51道docker面试题**
*   **35道Jenkis面试题**
*   **78道MongoDB面试题**
*   **17道ansible面试题**
*   **60道dubbo面试题**
*   **53道kafka面试**
*   **18道mysql面试题**
*   **40道nginx面试题**
*   **77道redis面试题**
*   **28道zookeeper**

**总计 1000+ 道面试题, 内容 又全含金量又高**

*   **174道运维工程师面试题**

> 1、什么是运维?

> 2、在工作中,运维人员经常需要跟运营人员打交道,请问运营人员是做什么工作的?

> 3、现在给你三百台服务器,你怎么对他们进行管理?

> 4、简述raid0 raid1raid5二种工作模式的工作原理及特点

> 5、LVS、Nginx、HAproxy有什么区别?工作中你怎么选择?

> 6、Squid、Varinsh和Nginx有什么区别,工作中你怎么选择?

> 7、Tomcat和Resin有什么区别,工作中你怎么选择?

> 8、什么是中间件?什么是jdk?

> 9、讲述一下Tomcat8005、8009、8080三个端口的含义?

> 10、什么叫CDN?

> 11、什么叫网站灰度发布?

> 12、简述DNS进行域名解析的过程?

> 13、RabbitMQ是什么东西?

> 14、讲一下Keepalived的工作原理?

> 15、讲述一下LVS三种模式的工作过程?

> 16、mysql的innodb如何定位锁问题,mysql如何减少主从复制延迟?

> 17、如何重置mysql root密码?
详情docs.qq.com/doc/DSmdCdUNwcEJDTXFK
?

> 10、什么叫CDN?

> 11、什么叫网站灰度发布?

> 12、简述DNS进行域名解析的过程?

> 13、RabbitMQ是什么东西?

> 14、讲一下Keepalived的工作原理?

> 15、讲述一下LVS三种模式的工作过程?

> 16、mysql的innodb如何定位锁问题,mysql如何减少主从复制延迟?

> 17、如何重置mysql root密码?
详情docs.qq.com/doc/DSmdCdUNwcEJDTXFK
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值