在本篇博客中,作者将会讲解在linux系统中,权限的基本概念。
一.什么是权限
通俗的讲,权限是用来约束人的。比如说:你买了某软件的vip会员,那么你就可以执行相对操作,如果你没买,则就会有权限约束你的行为。
而在Linux系统中,权限可以等于:角色+文件属性
因为在Linux中,有着一切皆文件的理念。
角色
Linux系统是一个多用户系统。那么在权限中,角色又是什么呢?
一般来说,Linux系统角色可以分为root和普通用户
而对于普通用户而言,又可以分为三类角色:拥有者(owner)、所属组(group)和其他人(other)。这三类角色是对于文件而言的。
文件属性
在我们通过ls -l 指令的时候,可以显示出文件的详细信息
对于后半段的信息来说,大部分都能看得懂,那么前半段又是什么呢?前半段是文件的一些有关于权限的属性。
二.文件类型和访问权限
在前半段信息中,每一部分都如下图所示。
文件类型
开头的第一个字符代表的是文件类型,文件类型有很多种。如下:
d :文件夹- :普通文件l :软链接(类似 Windows 的快捷方式)b :块设备文件(例如硬盘、光驱等)p :管道文件c :字符设备文件(例如屏幕等串口设备)s :套接口文件其中最常见的就是前面两个。
角色的权限
后面接着的九个字符分别分为三段,其中每一段都有四种字符
r:可以读
w:可以写
x:可以执行
-:代表没有该权限
第一段:代表着文件拥有者的权限
第二段:代表着所属组的人的权限
第三段:代表着其他人的权限
在往下接着的是文件的所属用户和文件的所属组。
三.修改权限
知道了文件的权限后,文件的权限也是可以修改的。
改变拥有者的权限
chmod u+rwx [文件名] 给对应的文件加上rwx权限(可以单独给r、w、x)
chmod u-rwx [文件名] 给对应的文件减上rwx权限(可以单独给r、w、x)
改变所属组的权限
chmod g+rwx [文件名] 给对应的文件加上rwx权限(可以单独给r、w、x)
chmod u-rwx [文件名] 给对应的文件减上rwx权限(可以单独给r、w、x)
改变其他人的权限
chmod o+rwx [文件名] 给对应的文件加上rwx权限(可以单独给r、w、x)
chmod o-rwx [文件名] 给对应的文件减上rwx权限(可以单独给r、w、x)
改变所有人的权限
chmod a+rwx [文件名] 给对应的文件加上rwx权限(可以单独给r、w、x)
chmod a-rwx [文件名] 给对应的文件减上rwx权限(可以单独给r、w、x)
改变文件拥有者和所属组
以下操作需要root的身份才能执行
chown [用户名] [文件名] 将该文件的拥有者给对应用户
chgrp [用户组] [文件名] 将该文件的用户组给对应用户组