文件的权限管理

1.文件权限的读取

ls -l [filename] 查看文件的属性

mkdir -dl [dirname] 查看目录的属性

*ls -l =ll

文件元数据(每一个属性字段用一个字节来记录 文件名按字母来记录字节):
在这里插入图片描述
[1]文件的类型

  -空文本普通文件

 d 目录

 s(sockt) 套接字(类似于现实中的门)

  l 软链接(eg:快捷方式)

  c 字符设备:显示字符的设备

  b 块设备

[2]此文件权限(此文件对谁能做什么事情)

[3].表示文件加载了安全上下文(selinux)

[4]硬连接的个数(文件内容被系统记录的次数)

[5]文件所属用户

[6]文件所属组

[7]文件的大小

[8]文件内容最后一次被修改的时间

[9]文件的名字

目录的元数据:
在这里插入图片描述
[1]目录的类型

[2]目录的权限(此目录对谁能做什么样的事情)

[3].表示目录加载了安全上下文

[4]目录中子目录的个数(一定的子目录 子文件不算)

[5]目录的所属者

[6]目录的所属组

[7]目录中所有文件和目录的元数据的大小

[8]目录中内容最后一次被修改的时间

[9]目录名称

文件的权限的改变

权限的类型及理解

*用户类型:
(1)u对所属用户user的权限
(2)对所属组group中用户的权限
(3)对其他用户other的权限
在这里插入图片描述

  • 文件权限的类型:

r 读:是否可以显示文件中的内容
在这里插入图片描述

w 写:当前用户是否能对文件内容进行更改
在这里插入图片描述

x 执行:是否能用文件的绝对路径的名称来调用文件内记录的命令
在这里插入图片描述

*目录的权限类型:

x 执行:用户是否能进入到当前目录
在这里插入图片描述

w 写:是建立在执行权力x之上的 是否能任意的对目录中的文件进行删除或创建
在这里插入图片描述
r 读:是否能用ls查看目录
在这里插入图片描述

2.管理文件的用户及文件的组(只有超级用户能管理)

chown 对文件/目录所有者和所有组的改变

chown [username]file/dir 改变文件或目录的所有者

chown [username]:[grooupname] file/dir 改变文件或目录的所有者及所有组
在这里插入图片描述

chown -R dir 递归更改目录 在这里插入图片描述

*chown 不能对文件或目录的所有组单独修改 chgrp 对文件/目录所有组的改变

3.管理文件的权限

chmod 修改不同用户对文件的权限

修改权限的方式

1)字符的方式

chmod [u/g/o][+/-/=][w/x/r/-] 目标文件

eg*:

chmod ugo-r /mnt/file1 给文件file1的u、g、o三个用户均剥夺r读权限

chmod u+r,g+w,o+x /mnt/file1 给文件file1的u用户下放r读权力、g用户下放w写权力、o用户下放x执行权力

*chmod +x/+r /mnt/file2 给文件file2的所有用户下放x执行/r读权力

chown +/-w /mnt/file2 只给文件file2的所有者用户下放/剥夺w权力

chown a+/-w /mnt/file2 给文件file2的所有用户下放/剥夺w权力
在这里插入图片描述

2)八进制数字的方式

chmod [数字] 目标文件

权限 二进制 八进制

— 000 0

*–x 001 1

*-w- 010 2

-wx 011 3

*r-- 100 4

r-x 101 5

rw- 110 6

rwx 111 7

*便捷记忆:只需要记住–x=1 -w-=2 r–=4 各自的八进制数字 其余情况按权限相加即可

eg:-wx=3=1+2 rwx=7=1+2+4

chmod 733(=rwx-wx-wx)/mnt/file1

在这里插入图片描述

3)复制权限方式

chmod --reference=[属性源文件] 目标文件

在这里插入图片描述

4.系统预留阀值
(1)对系统的预留阀值的理解

1)资源共享实现的功能越多,其安全性也越低

2)权限的预留阀值越大安全性越高,同时功能实现的也越少

(2)预留阀值的查看:umask

(3)预留阀值的建立:

1)临时设定 在命令行直接键入命令 umask [对应权限数字]

临时设定当再次开启shell时预留阀值会恢复为默认的值

eg:umask 077 表示设置预留阀值为—rwxrwx

当预留阀值设置为007后
默认新建目录的权限为700(777-077) 默认建立的文件的权限为600(777-077-111=700-111)
在这里插入图片描述
2)永久更改 需要在环境文件
/etc/profile和shell文件
/etc/ bashrc中分别设定后保存

设定后umask的值并不会立即生效 需执行

source /etc/profile

source /etc/bashrc 让设定立即生效

5.特殊权限sst的设定

(1)sticky 粘制位

1)说明

适用于公共目录(只针对于目录):在目录的权限上设置粘制位sticky权限,则目录中的文件只能被文件的所有者和超级用户所删除

对文件:表示文件即使没有被程序调用也会被加载到交换空间中

2)设定方法

chmod o+t fir 或
chmod 1xxx dir
在这里插入图片描述
在这里插入图片描述
(2)suid 冒险位

1)说明

对文件(只针对二进制文件):文件有suid权限的文件,因执行文件形成的进程的所属者为该文件的所有者,与是谁执行进程无关

对目录:目录有suid权限的目录,因执行目录而形成的进程的所有者为该目录的所有者,与是谁执行进程无关

2)设置方法

chmod u+s file/dir 或 chmod 4xxx file/dir
在这里插入图片描述
(3)sgid 强制位

1)说明

对文件:文件有sgid权限时,因执行文件而产生的进程的所属组为该文件的组,与是谁执行无关

对目录:目录有sgid权限时,因执行目录而产生的进程的所有组为该文件的组,与是谁执行无关;eg:在此目录中出现的文件会自动归属到该目录下,与谁建立的无关

2)设定方法

chmod g+s file/dir 或 chmod 2xxx file/dir

*注:若想同时设定sgid,suid,sticky 可以使用命令 chmod 7xxx(7=4+2+1)file/dir

7.facl(file access control list)文件权限列表

(1)作用:文件对特殊的人有特殊的权限

(2)查看文件权限列表

当文件权限后有显示+ 表示文件的权限列表被打开

查看权限: getfacl
在这里插入图片描述
**注:mask 表示设定权限的最大值

当打开facl权限列表之后 再对g进行减少权限操作mask会发生变化

恢复mask值用 setfacl -m m:[权限] fire/dir

(3)建立权限列表setfacl -m u/g:[特权人]/[特权组]:[特权] file/die

eg:setfacl -m u:admin:rwx /cw 表示admin用户对文件cw有读写执行特权

**注:关于目录的递归

setfacl -R -m 对已有文件递归继承facl

setfacl -m d:

d(default) 只对设定之后建立的文件/目录有继承效果

setfacl -k dir 删除default继承facl效果

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

(4)setfacl -x user/group 去除权限

(5)setfacl -b file/dir 关闭权限列表

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值