使用过linux的同学,都必定会发现,当在某一目录下进行 ll 命令的时候,会发现显示结果的左边会出现一些让人疑惑的字母,
如图:
这些drwx都是些什么呢?带着疑惑,让我们来看看linux的权限管理。
rwx都是权限的缩写,分别为:read(读)、write(写)、execute(执行),而d代表的是目录,相应的,文件就用 - 来代表。
如下图,分别显示的是目录和文件的权限信息:
目录:
文件:
linux中,权限信息都有十位,centos6以后,多了一个. 一般情况下都用不到。
下面就来详细介绍一下这十位权限信息(包括开头信息,表示的是文件类型)。
—(文件类型)— — — (u 拥有者权限)— — —(g 所在组权限)— — —(a 其他人的权限)
这样,或许linux新手不太理解。下面就用实例来介绍一下,具体的含义。
-(代表的是文件类型)(r--)拥有者的权限(r--)所在组的权限(r--)其他人的权限
正常的就是这样的:
-r--r--r--
这就代表的这是一个文件,并且拥有者拥有读权限,所在组拥有读权限,其他人拥有读权限。
常见的权限有:
drwxr-xr-x
这个权限简称 755,就是该目录拥有者拥有读、写、执行权限,所在组拥有读、执行权限,其他人拥有读、执行权限。
那下面来介绍一下如何增添、修改、删除权限:
使用root账号,拥有最高权限的账号来进行下面的所有操作。
(1)用u,g,a来分别表示拥有者、所在组、其他人
修改权限使用命令:
chmod
例如,要给当前目录下,abc文件的用户组的添加读权限:
chmod u+r abc
同理,删除权限,即可使用u - r即可。对应的可以使用g + r (g - r),a + r (a - r)。
同时当前目录下abc文件添加读、写、执行权限:
chmod u=rwx abc
这种使用非数字的方法,会显得非常麻烦。下面就介绍一下使用数字的方法来操作文件或目录的权限。
(2)
在使用数字来操作权限之前,需要了解一下r、w、x 代表的数字。
r | 4 | 2^2(二的二次方) |
w | 2 | 2^1(二的一次方) |
x | 1 | 2^0(二的零次方) |
例1:给当前目录下abc文件修改权限为:拥有者(读、写、执行);所在组(读、写、执行);其他人(读、写、执行)。
chmod 755 abc
7表示4+2+1,5表示4+1
例2:给当前目录下abc文件修改权限为:拥有者(读、写);所在组(读);其他人(读)。
chmod 644 abc
6表示4+2,4就表示的是4
总结,linux中,一切皆为文件,为文件又离不开权限,所以学好权限是学好linux的第一步。