Linux学习笔记五:文件权限

 1  ---第五天---
 2  
 3  普通文件:
 4      
 5      r:复制
 6      w
 7      x
 8  
 9  文件夹:
10      r:ls
11      w:创建,删除,复制
12      x
13  删除文件,与目录的写权限有关。
14  
15  面试题:将一个文件cp到一个目录下,则至少分别对文件和目录有哪些权限?
16      
17      文件:r
18      目录:w+x
19  
20  X权限:chmod -R a+X ./dir时 只给文件夹加执行权限,不会给文件加。但是如果文件已经有了执行权限,也会加。
21  
22  面试题:不小心把把用户chenxu的家目录删除了,那么chenxu用户登录时会发生什么?怎么恢复呢?
23  
24      1.cp /etc/skel /home/chenxu
25      2.chown chenxu.chenxu -R /home/chenxu 
26      3.chmod 700 /home/chenxu
27  
28  
29  面试题;为什么文件夹默认是755,文件默认是644 ?
30  
31      因为umask == 0022
32  
33  cp -f的本质是什么?
34  
35      删除再新建!
36  
37  umask永久设置:写入~/.bashrc   umask -p ==> umask value
38  对目录:umask + default = 777
39  对文件:umask + default = 666 如果结果中有奇数,偶数保留不变。
40  
41  面试题:为什么普通用户可以用passwd命令修改/etc/shadow ?
42  
43      [root@centos7 /data]# ll /usr/bin/passwd
44      -rwsr-xr-x. 1 root root 27832 Jun 10  2014 /usr/bin/passw
45      因为该命令具有s权限。普通用户可以暂时以所有者(root)身份执行!
46  
47  特殊权限s:suid 作用在所有者  权值:4 sgid 作用在所属组 权值:2
48  使用:chmod u+s /bin/cat   
49  
50  特殊权限:sticky 作用早others   
51  在同一目录里,给该目录加t权限,不允许user1删除user2的文件,只有文件所有者和root才能删除该目录中的文件
52  
53  
54  面试题:suid的作用是什么?sgid的功能是什么?
55      suid:作用于2进制可执行文件上,执行此文件的用户降临时继承此文件所有者的权限。
56      sgid:
57          1,作用于2进制可执行文件上,执行此文件的用户将临时继承文件所属组的权限
58          2,作用于目录上,此目录中新建文件的所属组将自动从此目录继承
59  
60  *实验:测试sticky和suid,sgid用法!
61  
62  ---
63  1,有一个项目小组django,成员有leijun,mayun,希望组内成员彼此拥有修改对方创建的文件的权限,如何设置?
64      1,创建项目文件夹,pro,把所属组改成django,并+w权限
65      2,chmod g+s pro,    任何用户在pro目录下创建的文件,所属组都从pro继承
66      3,创建django组,并把leijun,mayun加入到改附加组。groupadd django ; usermod -aG django leijun ; usermod -aG django mayun
67  2,t权限测试。
68      如上题中,给pro目录的other提娜佳t权限,则leijun和mayun不能删除对方删除的创建的文件!    
69  ---
70  
71  更改文件特殊属性:
72  chattr +i f1.txt    root也不能修改,删除,不能修改属性。
73  chattr -i f1.txt
74  chattr +a f1.txt    只能被追加!不能干其它事情。
75  chattr -a f1.txt
76  
77  查看特殊属性:lsattr f1.txt
78  
79  ACL--setfacl 实现文件权限的灵活管理!增加传统的文件权限控制!
80  
81  setfacl -m 修改       setfacl -m u:mayun:rw f1 使马云对f1有读写权限 
82      -x 删除       setfacl -x mayun f1 删除mayun的acl权限
83      -R 递归
84      -m mask::rw setfacl -m mask::rw 设置mask为rw
85      -R -b   清除所有acl属性
86  getfacl f1  查看f1的acl配置

猜你喜欢

转载自blog.51cto.com/13182370/2363883