1.文件权限


理解文件权限符:

可以通过ls -l命令查看文件的权限,eg:

harbor 文件权限是 10000 文件权限-rw-r-r_hg

第一部分的字段(如:-rw-r--r--.)是描述文件和目录权限的编码。该字段的第一个字符表示对象的类型,主要有以下表格中几种:

符号

含义

-

文件

d

目录

1

链接

c

字符型设备

b

块设备

n

网络设备

随后的三组三字符的编码,每一组定义了三种访问权限:

符号

含义

r=4

对象是可读的

w=2

对象是可写的

x=1

对象是可执行的

注意:若没有某种权限,该限位会出现单破折线

这三组权限分别对应三个安全级别:(-rw-   r--    r-- .)

  • 对象的属主(字母u表示)
  • 对象的属组(字母g表示)
  • 系统的其他用户(字母o表示)
  • *特殊对象:所有人a(u+g+o)

-rw-   r--    r-- .  就表示登录该系统的root用户有读取、写入的权限,而属于root组的成员有读取的权限,而其他不属于root组的用户只有读取的权限。

内容

-

rw-

r--

r--

1

root

root

12

4月12  20:48

1.txt

含义

文件

类型

属主的权限

属组的权限

其他人的权限

链接

属主

属组

大小

创建

时间

文件名

文件和目录的权限:

元件

内容

叠代物件

r

w

x

文件

详细数据data

文件数据夹

读到文件内容

修改文件内容

执行文件内容

目录

文件名

可分类抽屉

读到文件名

修改文件名

进入该目录的权限

2.改变安全性设置

2.1改变文件的权限chmod

chmod命令可以改变文件和目录的安全性设置,命令格式如下:

(1)使用符号:eg:chmod  u+r    1.txt  使属主对1.txt文件只有读取权限

chmod

u+r

1.txt

命令

对象加权限

文件或目录

***对象(u/g/o/a)赋值符(+/-/=)  权限类型(r/w/x)

eg:改变前,1.txt的属组权限为可读(r--)

harbor 文件权限是 10000 文件权限-rw-r-r_群组_02

 改变后,1.txt的属组权限为可读、可写(rw-)

harbor 文件权限是 10000 文件权限-rw-r-r_harbor 文件权限是 10000_03

(2)使用数字:eg:chmod   760   1.txt    使属主对1.txt有读取,可写、执行权限,属组对1.txt有读取和可写权限。

chmod

760

1.txt

命令

权限

文件名

**r=4    w=2   x=1   7代表属主的权限为rwx(7=4+2+1)6代表属组的权限rw-(6=4+2)

0代表其他成员的权限为---(0)

harbor 文件权限是 10000 文件权限-rw-r-r_linux_04

2.2改变文件拥有者chown

(1)chown(是change owner的简写):chown   (-R) 账号名称  文件或目录

选项和参数:

-R:进行递归(recursive)的持续变更,亦连同次目录下的所有文件都变更。

eg:把1.txt的属主由root改成user01

harbor 文件权限是 10000 文件权限-rw-r-r_文件名_05

 (2)chown可以同时改变属主和属组,  chown   (-R) 账号名称:群组名称  文件或目录

注意:要改变的群组名称必须要在/etc/group文件内存在才可以

harbor 文件权限是 10000 文件权限-rw-r-r_文件名_06

 可以同时把1.txt文件的属主和属组改成user04

2.3改变所属群组chgrp

chgrp是change  group的简称:chgrp   群组名称  文件或目录

选项和参数:

-R:进行递归(recursive)的持续变更,亦连同次目录下的所有文件都变更。

eg:把1.txt的属组由root改成user04

harbor 文件权限是 10000 文件权限-rw-r-r_linux_07

3.ACL

3.1 ACL的概念

ACL是Access  Control  List的缩写,主要目的是提供传统的owner、group、other的read、write、execute权限之外的具体权限的设置。ACL可以针对单一的用户、单一文件或目录来进行r、w、x的权限设置。

ACL可以针对以下三个方面控制权限。

用户user

可以针对用户来设置权限

用户组group

针对用户组来设置权限

默认属性mask

可以在该目录下在新建文件或者目录时设置新数据的默认权限

3.2  ACL的设置技巧

(1)  setfacl(set  file   acl):设置某个目录或文件的ACL规定

setfacl   参数     目标文件名

-m

设置后续的acl参数给文件使用,不可与-x合用

-x

删除后续的acl参数,不可与-m合用

-b

删除所有的acl设置参数

-k

删除默认的acl参数

-R

递归设置acl

-d

设置默认acl参数

harbor 文件权限是 10000 文件权限-rw-r-r_harbor 文件权限是 10000_08


(2)getfacl(get  file  acl):取得某个文件/目录的ACL设置项目

getfacl   参数     目标文件名(getfacl参数和setfacl参数相同)

harbor 文件权限是 10000 文件权限-rw-r-r_群组_09