Linux的文件权限

2020-04-02  本文已影响0人  韧心222

参考《Linux就该这么学》《Linux就是这个范》《鸟哥的Linux私房菜》

Linux的文件权限大致可以分为4类,分别是:

1. 普通权限

普通权限就是最为常见的Linux的文件属性,使用命令ls -l就可以查看了,例如:

普通权限

其中第一个字符表示文件的类型,常见的包括:

后面的9个字符以三个为一组,分别表示文件所有者、文件所有组和其他人的“读”、“写”、“可执行”权限,分别以rwx表示。对于文件而言,这三种权限比较明确,但是对于文件夹而言,其含义略有不同:

2. 特殊权限

在Linux有三种特殊权限,可以为Linux提供更加方便的文件管理,分别为SUID、SGID以及SBIT

2.1 SUID

SUID是让程序的执行者临时拥有程序执行者的权限,如果具备该权限,会将第一组rwx的最后一位变成sS,其中:

2.2 SGID

SGID的作用有两个:

如果具备该权限,会将第二组rwx中的最后一位变成s或者S,其中:

可以

2.3 SBIT

对一个文件夹设置了SBIT后,会使得该文件夹中的所有文件只能被拥有者所删除。

如果具备该权限,会将第三组rwx中的最后一位变成t或者T,其中:

可以

对于使用了特殊权限的文件而言,可以使用四位数字来表示,其中第一位表示SUID(4)、SGID(2)与SBIT(1)的和

3. 隐藏属性

文件的隐藏属性可以使用lsattr命令来查看,隐藏属性主要包括:

要想查看文件的隐藏属性,可以使用命令lsattr,要修改隐藏属性,可以使用chattr命令

4. 文件访问控制列表

要想查看一个文件的ACL信息,可以使用命令

getfacl <path>

要想给一个文件/文件夹设置ACL,则需要使用命令

setfacl [参数] <path>

setfacl常用的参数包括:

例如:

setfacl -Rm u:linuxprob:rw- /root/anaconda-ks.cfg

可以为用户linuxprob对文件anaconda-ks.cfg添加读写的权限

setfacl -Rm g:linuxprob:r-x /root/anaconda-ks.cfg

可以为用户组linuxprob添加写和可操作的权限

如果一个文件被设置了ACL,那么在执行ls命令后则会看见普通权限后的原点变成了一个+

image.png
上一篇下一篇

猜你喜欢

热点阅读