目录
在讲权限之前,我们得先了解一下命令的执行原理。
我们每次在打开Xshell执行相关命令时,通常会看到这样一段代码:
[yjd@hecs-87060 ~]$
这段代码是什么呢?,要知道这段代码的含义,我们就得先搞懂Linux的本质。
Linux是一个操作系统,实质上这个操作系统是由操作系统内核(kernel)和外壳程序(shell)组成的,对于一般的用户,是不能直接访问操作系统内核的,我们必须通过外壳程序,即通过shell来实现与操作系统内核进行交流。而shell的具体体现就是命令行解释器,即就是我们上述的那段代码,我们这段代码后写上指令,此时这段代码就可以将命令传给操作系统内核,操作系统内核进一步去解析这些命令,解析完成之后,操作系统内核又把解析的结果传给命令行行解释器,最终命令行解释器把这些结果传给了用户。
综上来看,shell就像是一个中介,方便用户与操作系统内核进行交流。为什么要引入这个中介?其实最主要的原因就是为了保护操作系统内核。
?权限:权限=人+事物的属性
解释:单纯的概念我们可能不太好理解,我们可以想象生活中的这样一个场景,比如桌子上有一部手机,这个手机的属性是可以被使用,但是这个手机要被使用必须有人的参与,人参与之后,这个人就有了这部手机的使用权限。所以权限一定是人和事物的属性的总和。简单来说:权限就是一件事情是否允许被特定的人做。
?在Linux中有两类用户:
1.root用户:具有非常高的权限。
2.root用户所创建的普通用户:受权限的闲置,只具有一般的权限。
在Xshell中普通用户如何切换至root用户呢?
su -:从普通用户切换至root用户。
exit/su - 用户名:从root用户直接切换到普通用户。
在Linux中总共有三种用户类别:
1.拥有者 2.所属组 3.其他人
举一个简单的例子:
? ? ?老师在教师给学生上课,提出了一个很难的问题,让全班分小组讨论,根据解决问题的时间和方法最终决定获胜的小组并给予现金奖励。那么此时每个小组之间就是很明显的竞争关系了。假如说分成了A和B两个小组,A组中的小名提出了一个很好的思路,那么此时他的这个思路,就只允许A小组内的所有成员去进行访问,不允许B小组的人员进行访问。此时小明就是提出的想法的拥有者,A就是想法的所属组,具有了想法的访问权限。而B组就是其他,对想法没有访问权限。
? ? ? 在Linux中,我们未来可能也会多组进行代码的开发,也会遇到上述类似的场景,所以,在Linux中存在这三种用户类别,是很有必要的。?
我们可以通过ll指令查看文件的拥有者和所属组:?
绿色框标注的第一列为当前文件的拥有者,第二列为当前文件的所属组,其他则没有显示,因为除过所属组都是其他。
在linux中,有7种文件类型:
d:文件夹
-:普通文件(文本文件,各种静态库,可执行程序等等)
l:软链接(类似Windows的快捷方式)
b:块设备文件(例如硬盘、光驱等)
p:管道文件(用于通讯)
c:字符设备文件(例如屏幕等串口设备)
?如图:文件属性的第一列字母就代表了文件的类型,Linux和windows不一样,windows中我们经常以后缀名区分文件类型,但是在Linux中我们是以文件属性开头的字母辨别文件的属性。
在Linux中,文件也是具有相关的访问权限的。
r:读权限,对文件而言,具有读取文件内容的权限;对目录来说,具有浏览该目录信息的权限。
w:写权限,具有修改文件内容的权限;对目录来说具有删除移动目录内文件的权限 。
x:执行权限。
-:表示没有相关的权限,对文件而言,具有执行文件的权限;对目录来说,具有进入目录的权限。
?在所有属性中,第一大列除了第一列的文件的类型之外,还有九个字符,这9个字符分为了三组,分别代表了拥有者,所属组,其他人这三个用户类别对文件的访问权限,我们就拿p2这个目录举例:
拥有者的权限为rwx:拥有者对该目录可读可写可执行。
所属组的权限为rwx:所属组对该目录可读可写可执行。
其他人的权限为r-x:其他人对该目录可读不可写可执行。
以上便是权限相关的一些基本内容,至于如何修改访问者的权限,以及相关权限更改的操作我们在权限下期会为大家讲解。
本期内容到此结束^_^
?
?