linux中的权限管理

文件基本权限

首先看一下Linux中的文件权限,可以用ll命令或者带-l的ls命令查看

image-20200515135526284

第一个字符代表文件的类型,然后是权限、链接数、所属用户、所属用户组、文件大小、最后修改时间、文件名

Linux中的文件权限一共有7种:

前面三种为常见的文件类型,后面四种是特殊文件类型

符号 文件类型
- 普通文件(如上图第三列)
d 文件目录(也就是文件夹)
l 软连接(和Windows中的快捷方式相似)
b 设备块文件(例如硬盘和光驱)
p 管道文件
c 字符设备文件
s 套接口文件/数据接口文件
权限 对应数字 含义
r 4 可读
w 2 可写
x 1 可执行

在看上面图中的第一个文件权限

rwx——

每三个字符为一组,-代表没有相关的权限

第一组是表示文件所有者(u表示)的权限,这里是root,root对该文件拥有所有的权限

第二组是表示所属组(g表示)的权限,这里也是root,这里所属组对该文件没有任何权限

第三组是表示其他人(o表示)的权限,这里也是没有任何权限的

新创建的文件默认权限:

image-20200515141738439

修改文件权限

Linux中修改权限用的是chmod命令

具体用法见下图:

方式一:

给所属组加上写的权限

image-20200515141537125

也可以同时给所属用户和用户组还有其他用户加权限

image-20200515142243765

如果是要给全部的三个组同时加权限可以直接用a代表ugo,是就是all

image-20200515142524794

减权限,这里同理也可以用a代替ugo

image-20200515142333848

方式二:

直接用代号赋予相应的权限,当要更改多个组的权限时,中间用逗号隔开

image-20200515142801089

image-20200515143020204

image-20200515143020204

方式三:

用的比较多的其实是这一种

image-20200515143154536

这里的每个数字就是刚刚对应权限代表的二进制转换过来的,这里544转换为方式二就是:u=rx,g=r,o=r,x的权重为1,w的权重为2,r的权重为4,把每个组的所有权限的权重加起来就是方式三的数字了。

这里再顺便介绍一个和权限相关的命令:

chown: 用来改变文件或目录的所有者

格式:

1
chown user:user fileName