资讯 小学 初中 高中 语言 会计职称 学历提升 法考 计算机考试 医护考试 建工考试 教育百科
栏目分类:
子分类:
返回
空麓网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
空麓网 > 计算机考试 > 系统运维 > 运维 > Linux

二、Linux权限

Linux 更新时间: 发布时间: 计算机考试归档 最新发布

二、Linux权限

目录

1.Linux 权限

1.1shell命令以及运行原理

1.2 Linux权限的概念

1.3权限管理

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

1.4.1对普通文件的操作

1.4.2 对目录的权限操作


1.Linux 权限

广义上,Linux发行版=Linux内核+Linux发行版。

狭义上,Linux=Linux内核

shell是命令解释器的统称 ,Linux使用的是Bash,bash是shell其中之一。程序员和我自己的关系。

1.1shell命令以及运行原理

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

如何理解:从技术角度,shell的最简单定义:命令行解释器

命令行解释器作用:

将使用者的命令翻译给核心(kernel也就是内核)处理。将核心的处理结果翻译给使用者。

对于非法请求,shell是有权利拒绝的:保护内核,不会传递到内核。

shell创建子进程(程序运行起来就是一个进程,shell本身就是一个进程)来进行执行具有风险的事情,出现问题(程序挂掉)不会影响shell。就相当于找了一个实习生背锅。

为什么不能直接操作kernel: 需要用户非常了解内核,成本太大了。

如何证明bash是一个进程:

ps-axj显示系统中所有的进程:查看bash进程

每次登录的时候,系统都会创建一个对应的bash进程:

再登录一次:

查看进程:

 结束进程:kill -9  31639 。直接结束了。退出了

1.2 Linux权限的概念

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

超级用户(root):可以在Linux系统做任何事情,不受限制

普通用户:具有一般权限,需要受权限约束的。你所创建的用户(adduser),创建用户只能在超级用户下。

普通用户切换超级用户:su -

切换成功: 

 

切换回原来的用户:输入exit 或快捷键ctrl +d

不要使用su - zhy(超级用户可以随意切换用户,所以设置密码的时候一定要设置复杂一些) ,因为这样会创建bash进程。

在普通用户下sudo 临时权限提升,执行后续命令,以root用户执行。

sudo 没法直接使用,需要添加信任关系。后面整理

1.3权限管理

理解权限是什么:

一瓶水有自身的属性:喝与不能喝,但是权限是:这个人能喝,那个人不能喝。

一间屋子有自身的属性:能进不能进,但是权限是:这个人能进,那个人不能进。

权限约束的是人,文件本身具有的天然的权限属性:r + w + x

权限:一件事情是否允许被特定的人做。权限=人+事物属性。

所以权限操作:人:修改人    属性:修改属性

1.文件访问者的分类(人,认识人)

Linux中的用户类别:

1.拥有者 owner 

2.所属组 group 

3.其他 other () 

root 和普通用户指的是具体的一个人。拥有者,所属组,other 指的是一种角色身份。

2.文件类型和访问权限(事物属性)

Linux下一切皆文件

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

1.4.1对普通文件的操作

 a)chmod修改文件访问权限

用户符号:u:拥有者   g:拥有者同组用   o:其他用户   a:所有用户

+:增加权限    -:取消权限

修改拥有者的权限

修改所属组的权限

修改其他用户的权限

也可以同时修改文件权限: 

修改所有的文件权限:

所属用户修改自己的所属文件权限后:所属用户进行操作时发现读写执行都是被拒绝的。

那我使用root用户呢?

file.txt文件,其他用户设置的权限是r--,只有只读的权限,cat读ile.txt文件的内容,确实是可以的,也符合我们设置的。

发现root不仅可以直接修改文件的属性,并且不受文件权限的限制,即使file.txt其他用户没有rwx root也可以读写。

只有执行权限是受限制的。但是,root又可以直接修改文件的权限,我加上x就可以了。这不是矛盾吗?实际上在Linux系统中,对可执行是具有强管束,怕执行的文件是有风险,因此需要增加一个步骤,就是超级用户直接自己可以加上可执行。这样就可以执行文件了。

总结:超级用户(root)可以修改权限,并且几乎不受权限约束。上帝视角。

使用root在普通用户里创建一个文件:

b)chown修改文件的拥有者

我想把file.txt文件的所属者修改为root,但是需要经过别人的同意,用sudo,因为我还没有添加信任,因此sudo是不行的。

我直接切换到root用户(root 不受权限限制啊,随便改,不用经过别人同意,给你就拿着),去修改,file.txt的拥有者:

su 切换到root用户,不会更改你所在的路径(这样就不会再去找当前路径)

su - 会修改路径

修改拥有者: 

 又还给了zhy,不需要你同意,我是超级用户,给你就拿着。

c)修改文件或目录的所属组

修改file.txt的所属组,给别人需要别人同意,因为没有添加信任,所以sudo不行。 

切换到root 用户进行操作:

改回去:

1.我是root用户,不需要你的同意,直接改。

2.文件的所属者可以直接要回去

同时修改拥有者和所属组: 一样的,也需要别人同意,这里直接切换到root

 修改回来:

文件权限的分析:

所以我们再修改文件权限的时候,可以这样改:使用8进制

创建者不一定是拥有者,不等价,2种概念。

1.4.2 对目录的权限操作

修改目录所属者的权限,所属者没有目录读权限,不能读目录,读取权限是查看这个目录

目录的写权限:向目录里创建文件或目录

这里touch zhy/test.c是需要x权限的:这里主要原因是,你创建文件是需要打开文件,打开文件需要x权限,可以这样理解。

 

进入目录需要什么权限:需要x权限,打开目录就是执行目录

当目录只有rw权限时,我查看目录,发现是可以查看的,但是查看目录是需要进入目录的,这不是矛盾了,我没有x权限,还是能查看:

 其实不是矛盾的,我只有r权限,只让你看看文件名,具体里面的文件属性不会让你看的:

当有r和x时才能ll 显示文件的全部属性:

 

zhy用户test文件来说是其他用户,zhy对于root_file1文件也是其他用户:

zhy是可以删除这个文件root_file1的,我直接给你删除掉,这不就有问题了,别人创建了一个文件,其他人可以随便删除。

这里的主要原因是,test目录给了其他用户具有写权限:
 

发现不能删除了 

 结论:

如果目录本身对other具有w权限,other可以删掉任何目录下的文件

如果目录本身对other没有w权限,other不可以删除掉任何文件

若是我们有一个需求,other可以在特定的目录下创建文件,并写入但是不想让任何人删掉自己的文件:(root又想让人创建文件,并不想让other删除我的root_file1或2或3文件)

所以需要粘(nian)滞位:

可以删除自己创建的文件:

 

注意:粘滞位只能对目录设置,一般是限制other权限的。对设置了粘滞位的目录,在该目录下的文件,只能(目录和普通)文件拥有者(或root)可以删除,一般这个目录拥有者是root,其他人不能删除。

粘滞位的应用:有时候,有多个人,或者系统会有很多的临时数据,所有的临时数据文件放在系统的/tmp,需要把所有的权限都放开,那所有人都可以删除别人的文件,就乱了啊。但是只想让文件拥有者自己删除自己的文件,所以用到粘滞位。

为什么我创建文件的时候,创建出来的默认权限是现在看到的样子:

默认权限:

普通文件,起始权限(666)

目录文件,起始权限(777) 

系统中有一个权限掩码:umask,凡是在umask中出现的,都应在起始权限中去掉

 

权限掩码:2进制表示,主要看后3位    000 000 010

普通文件的起始权限:666   110 110 110

如何计算?

default=default & ~(mask)

对mask取反:111 111 101

mask取反:                 111 111 101

普通文件的起始权限:110 110 110 &

结果:                          110 110 100  ,所以普通文件默认是:664,目录文件一样计算。 

那我就可以自定义设置默认权限了:

这个权限是本次登录有效,换个用户登录就无效了:root要求严格点,不是0333。

转载请注明:文章转载自 http://www.konglu.com/
本文地址:http://www.konglu.com/it/941984.html
免责声明:

我们致力于保护作者版权,注重分享,被刊用文章【二、Linux权限】因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理,本文部分文字与图片资源来自于网络,转载此文是出于传递更多信息之目的,若有来源标注错误或侵犯了您的合法权益,请立即通知我们,情况属实,我们会第一时间予以删除,并同时向您表示歉意,谢谢!

我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2023 成都空麓科技有限公司

ICP备案号:蜀ICP备2023000828号-2