问题
1.权限存在的意义
系统最底层安全设定的方法之一,保证文件可以被可用的用户做相应操作。
权限的查看
指令 | 作用 |
---|---|
ls -l file | 查看文件的元数据 |
ls -ld dir | 查看目录的元数据 |
文件的权限信息
- 一共8段信息
如:
- rw-rw-r--. 1 kiosk kiosk 0 Aug 15 17:29 file
- | rw-rw-r–. | 1 | kiosk | kiosk | 0 | Aug 15 17:29 | file |
---|---|---|---|---|---|---|---|
文件类型 | 权限信息 | 硬链接个数 | 拥有者 | 组 | 文件大小 | 最后一次修改的时间 | 文件名 |
文件类型:
分类 | 文件类型 |
---|---|
- | 普通文件 |
d | 目录 |
l | 软链接:快捷方式 |
s | socket |
c | 字符设备:将文件中的内容显示到屏幕上的虚拟的设备 |
文件硬链接个数:
- 文件内容被系统记录的次数
目录的权限信息
如:
d rwxr-xr-x. 144 root root 12288 Aug 15 18:47 etc
d | rwxr-xr-x. | 144 | root | root | 12288 | Aug 15 18:47 | etc |
---|---|---|---|---|---|---|---|
类型 | 权限 | 目录中子目录的个数 | 用户 | 组 | 子文件或子目录的元数据大小 | 最后一次被更改的时间 | 目录名称 |
所有者和组的修改
- 需要root用户执行
命令 | 参数 | 作用对象 | 作用 |
---|---|---|---|
chown | username | file|dir | 修改文件或目录的所有者 |
-R username | dir | 修改目录以及目录内所有文件及目录的所有者 | |
username:group | file|dir | 同时修改组和所有者 | |
chgrp | groupname | file|dir | 修改文件或目录的组 |
-R groupname | dir | 修改目录内所有文件及目录的组 |
chown test:test01 file
:
chgrp root file
:
权限的作用
如:
rw-rw-r--.
权限信息分为3段:
分类 | 用户 | 组 | 其他 |
---|---|---|---|
权限 | rw- | rw- | r– |
缩写 | u | g | o |
含义 | user | group | other |
读取:
权限 | 对象 | 作用 |
---|---|---|
r | 对文件 | 是否可以查看文件中的字符 |
对目录 | 是否可以查看目录中有什么文件 |
写入:
权限 | 对象 | 作用 |
---|---|---|
w | 对文件 | 是否可以修改文件中记录的字符 |
对目录 | 是否可以在目录中管理文件,是否可以更改目录中文件的元数据 |
执行:
权限 | 对象 | 作用 |
---|---|---|
x | 对文件 | 是否可以通过文件名调用文件内记录的程序 |
对目录 | 是否可以进入此目录 |
权限管理
1.字符形式
命令 | 参数 | 对象 | 作用 |
---|---|---|---|
chmod | <u|g|o> <+|-|=> <r|w|x> |
file|dir | 修改文件或目录的权限 |
chmod | u+rw,g+wx | \mnt\file | 给file文件的所有者添加r和w权限,给组添加w和x权限 |
chmod | +u | file|dir | 不写操作对象默认是操作ugo全部,但是不包括w权限 |
chmod u+x,g+x file
:
- 字符形式操作比较繁琐,不推荐使用
2. 数字方式
数字方式中使用0到7的数字代表不同的权限,计算方式如下:
权限 | r | w | x |
---|---|---|---|
对应位数 | 2 | 1 | 0 |
计算方式 | x=2^0*1=1 |
w=2^1*1=2 |
r=2^2*1=4 |
按上面的值来计算出每种权限对应的数字
权限 | 数字 |
---|---|
r w x | 7 |
r w - | 6 |
r - x | 5 |
r - - | 4 |
- w x | 3 |
- w - | 2 |
- - x | 1 |
通过数字的方式修改权限:
指令 | 作用 |
---|---|
chmod 437 /mnt/file | 修改file文件权限为r-- -wx rwx |
对于权限只有读取的文件修改之后保存会提示文件只读,需要强制保存。而对于不能强制保存的普通用户来说就只能读取,不能保存。
对于没有权限的目录
dir2
来说普通用户访问目录的时候会被拒绝,无法进入也无法查看目录中的内容
对于权限只有读取的目录
dir2
普通用户只能查看到目录中文件的名字,看不到文件的元数据也无法进入目录。
权限列表
权限列表的作用是可以设置特定的用户对特定的文件有指定的访问权限
rwxr-xr-x+权限位最后一位是+的说明该文件的权限列表被开启
查看权限列表
命令 | 作用 |
---|---|
getfacl file | 查看文件的权限列表 |
[root@foundation7 Desktop]# getfacl file
# file: file //文件名
# owner: root //文件所有人
# group: root //文件所有组
user::rw- //用户权限
user:leo:rwx //特殊指定用户权限
group::r-- //组权限
mask::rwx //权限最大值
other::r-- //其他人权限
权限列表的操作
指令 | 参数 | 作用对象 | 作用 |
---|---|---|---|
setfacl | -m u:username:rwx | file | 设置列表用户权限 |
setfacl | -b | file | 关闭权限列表 |
setfacl | -x u:username | file | 删除权限列表指定用户 |
setfacl -m u:leo:rwx file
:
执行前的file文件的文件列表:
执行setfacl -m u:leo:rwx file
对leo用户设置rwx权限:
setfacl -b file
:
- 关闭文件权限列表关闭之后权限位最后一位的+变为.
setfacl -x u:leo file
- 删除权限列表中的leo用户