一、 文件权限
1.文件属性的查看
ls -l file,会弹出以下的输出
- rw- r-- r-- . 1 root root 0 Dec 31 09:55 file
1 2 3 4 5 6 7 8
1:代表文件的类型
- :普通文件
d : 目录
c:字符设备
s : 嵌套文件
p : 管道
b : 块设备
2:代表文件读写的权限
rw- r-- r--
拥有者 所属组 其他人
u g o
r:读操作 w:写操作 x:执行操作
4 2 1
例:
chmod u+r file #对file的拥有者增加读权限
例:
假定以前是 拥有者 所属组 其他人
r-- r-- r--
4 4 4
执行后chmod 745 file ,对用户增加了写和执行,对其他人增加了执行权限
拥有者 所属组 其他人
rwx r-- r-x
7 4 5
3:
对文件:表示文件内容被系统记录的次数(只有引用那块内存时会增加次数)
对目录:表示子目录个数(包括. … 隐藏目录)
4:文件的拥有者
5:文件的所属组
6:问价你的内容大小
7:文件最后一次被修改的时间
8:文件的名字
2.文件拥有者和所属组的改变
chown username file|dir 改文件/目录的拥有者
chgrp groupname file|dir 改文件/目录的所属组
chown username.groupname file|dir 两个一起改
chown -R username file|dir (递归修改)改文件/目录的拥有者,全部都改
chgrp -R groupname file|dir (递归修改)改文件/目录的所属组,全部都改
3.文件的普通权限
r=4
对文件来说:可以查看文件的字符(内容)(最高权限,若不能读更不能写)
对目录开说:可以查看目录中文件或目录的信息
w=2
对文件:可以改变文件内的字符(增删改)
对目录:在目录中增删改查
x=1
对文件:可以运行文件中记录的程序和动作
对目录:可以进入目录(最高权限)
4.系统默认权限的设定
系统设定新建文件或目录会自动去掉一些权限,以保证安全
设定方式
从系统存在角度来说,开放权力越大,系统存在意义越高
从系统安全角度来说,开放权力越少,系统安全性越高
所以系统设定新建文件或目录会去掉一些权限
新建文件的满权限是666,而目录是777
umask(普通用户和超级用户下都可以使用) #查看系统减掉的权限
umask xxx #修改该系统,使其创建文件或目录时减掉xxx,
此设定是临时设定,只在当前shell生效
永久设定umask值
修改:
vim /etc/bashrc #第70行
代码 上为普通用户umask
下为超级用户umask
vim /etc/profile #第60行
vim /etc/bashrc
70 if [ $UID -gt 199 ] && [ "`id -gn`" = "`id -un`" ]; then
71 umask 002 #普通用户的umask
72 else
73 umask 022 #超级用户的umask
74 fi
vim /etc/profile
59 if [ $UID -gt 199 ] && [ "`id -gn`" = "`id -un`" ]; then
60 umask 022
61 else
62 umask 022
63 fi
例:普通用户新建 666/777-002
文件 664 目录 775
超级用户新建 666/777-022
文件 644 目录 755
以上两个文件的umask取值必须保持一致,而且umask取值不是随心所欲,要根据rwx的等级
修改完成后:root下执行
[root@desktop0 pub]# source /etc/bashrc
[root@desktop0 pub]# source /etc/profile
让系统重新加载配置文件,让设定立即生效
二、文件的访问控制(acl列表)
1.acl定义
acl = access control
指定特殊的用户对特殊的文件有特殊的权限,除了当前的用户,还可以给某些用户一些权限
注意:若文件/目录有权限列表时(为+号时),
不可以用ls -l 查看权限,只能有getfacl 查看权限
[kisok@foundation0 ~]$ ls -dl /home/kisok
drwx--- + 44 kisok kisok 4096·······
加号就说明开启了acl访问控制列表
注意:若文件/目录有权限列表时&#