1. 权限的查看及读取
1.1 权限的查看
ls -l file ##查看文件权限
ls -ld dir ##查看目录权限
1.2 权限的读取
文件的属性又被称为文件的元数据组
一种元数据用1个byte来记录内容
文件权限信息:
【1】:文件的类型
符号
文件类型
-
普通文件
d
目录
l
软链接
b
块设备
c
字符设备
s
socket套接字
p
管道
【2】:用户权限
【3】:安全上下文
【4】:对象是文件时,代表文件被系统记录的次数(硬链接);对象是目录时,代表目录中子目录的个数
【5】:文件的拥有者
【6】:文件的拥有组
【7】:对象是文件时表示文件内容的大小,对象是目录代表目录中子文件的元数据大小
【8】:文件内容最后一次被修改的时间
【9】:文件名称
2. 普通权限的类型及作用
2.1 用户对文件的身份
u ## user 文件的拥有者
g ##group文件的拥有组
o ##other 除了文件拥有者和拥有组成员的其他用户的统称
2. 2 权限位
(1)文件的权限位:u(文件拥有者权限),g(文件拥有者权限),o(其他用户权限)
(2)修改文件或目录的拥有者
(2)修改文件或目录的拥有者和拥有组
(3)修改文件或目录的拥有组
chgrp username dir
用户身份匹配
user > group > other
权限类型
(1)可读:“ r ”
对于文件:表示可以读取文件的内容
对于目录:可以使用 “ ls ” 查看目录中的文件
(2)可写:“ w ”
对于文件:表示可以编辑文件的内容
对于目录:可以在目录中新建或者删除文件
(3) 可执行:“ x ”
对于文件:可以用文件名调用文件内记录的程序
对于目录:可以进入目录中
3. 设定普通权限的方法
设定文件权限:chmod
3.1 复制权限
chmod --reference=/mnt/file1 /mnt/file2 :复制文件/mnt/file1的权限到/mnt/file2中
chmod --reference=/mnt/dir1 /mnt/dir2 :复制文件/mnt/dir1的权限到/mnt/dir2上
chmod -R --reference=/mnt/dir1 /mnt/dir2 :复制文件/mnt/dir1的权限到/mnt/dir2及其子目录上,R表示递归操作
3.2 用字符的方式设置权限
chomd file
文件及目录的初始权限:
3.3 数字方式设置权限
用数字方式设置权限时,常用bool值表示:1代表开放该权限,0代表关闭该权限
rwx = 111 :开放文件或目录的读,写,执行权限
— = 000:关闭文件或目录的读,写,执行权限
用三位二进制可以表示的八进制范围:0~7
符号
二进制
八进制
文件权限
rwx
111
7
可读,可写,可执行
rw-
110
6
可读,可写,不可操作
r-x
101
5
可读,不可写,可操作
r- -
100
4
可读,可写,不可操作
-wx
011
3
不可读,可写,可操作
-w-
010
2
不可读,可写,不可操作
–x
001
1
不可读,不可写,可操作
- - -
000
0
不可写,不可读,不可操作
用数字修改文件或目录权限的例子如下:
4. 系统默认权限设定
系统存在的意义是共享资源,从安全的角度讲系统共享的资源越少、开放的权力越小系统的安全性越高。因此在保证系统安全和系统创造价值的基础上,把部分的权利默认开放,把不安全的权力默认保存
4.1 系统保留权利:umask
umask值越大系统安全性越高
文件默认权限 = 777 - umask -111=644
目录默认权限 = 777-umask=755
4.2 临时更改umask
umask权限值临时更改:可以在shell中临时设定系统保留权利,一旦shell关闭后权限值恢复默认值
4.3 永久更改umask
shell系统配置文件:vim /etc/bashrc
系统环境配置文件:vim /etc/profile
配置文件更改后必须要重新读取配置文件,否则umask的值不能更新成功:
source /etc/bashrc
source /etc/profile