RHCE-控制文件权限

文件归用户所有,通常是创建文件的用户
评论归单个组所有

读r
写w
执行x

字符表示法:
chmod whowhatwhich  file|directory
who: u ,g,o,a
what: +,- ,=
which:r,w,x

[root@desktop0 ~]# touch test.sh
[root@desktop0 ~]# ll test.sh
-rw-r--r--. 1 root root 0 Jan 14 19:39 test.sh
[root@desktop0 ~]# chmod a+x test.sh
[root@desktop0 ~]# ll test.sh
-rwxr-xr-x. 1 root root 0 Jan 14 19:39 test.sh
[root@desktop0 ~]# chmod o=--- test.sh
[root@desktop0 ~]# ll test.sh
-rwxr-x---. 1 root root 0 Jan 14 19:39 test.sh
[root@desktop0 ~]# chmod g-x test.sh
[root@desktop0 ~]# ll test.sh
-rwxr-----. 1 root root 0 Jan 14 19:39 test.sh
[root@desktop0 ~]# chmod g-r test.sh
[root@desktop0 ~]# ll test.sh
-rwx------. 1 root root 0 Jan 14 19:39 test.sh


[root@desktop0 ~]# chmod u=r test.sh    #将所有权限重新配置,原来的权限会被覆盖
[root@desktop0 ~]# ll test.sh    
-r--------. 1 root root 0 Jan 14 19:39 test.sh



数字表示法:
chmod ###  file|directory
#是r=4,w=2,x=1的和

r=4,w=2,x=1

6     4      4  
rw-   rw-   rw-

chmod -R   权限   file|directory


创建目录默认的权限是755
[root@desktop0 ~]# ls -al -d rsc
drwxr-xr-x. 2 root root 6 Jan 14 19:48 rsc    #默认权限755
[root@desktop0 ~]# >file1.sh
[root@desktop0 ~]# ll file1.sh
-rw-r--r--. 1 root root 0 Jan 14 19:48 file1.sh #默认权限644


chown
chown 属主(所有者)  文件或目录
chown 属组  文件或目录
chown 属主:属组  文件或目录

chown -R 递归修改指定目录下的所有文件,子目录的归属






特殊权限:

[root@desktop0 ssh]# ll /bin/passwd
-rwsr-xr-x. 1 root root 27832 Jan 30  2014 /bin/passwd
其它用户或组有r-x中的x权限,执行passwd时,是以root用户来执行passwd程序

修改用户的S位
chmod u+s /test/rsc.sh
SUID:对可执行文件setuid权限,表示将以文件的用户或组身份运行命令,而不是以运行命令的用户身份

修改组的S位:
chmod g+s /test

SGID:对某个目录setgid,表示在该目录中创建的文件将继承目录的组所属关系,而不是继承自创建用户
[root@desktop0 test]# chmod g+s /test
[root@desktop0 test]# ll /test -d
drwxrwsr-x. 2 root GDevelps 30 Jan 14 22:24 /test
[root@desktop0 test]# su - test1
Last login: Sun Jan 14 22:24:18 CST 2018 on pts/0
[test1@desktop0 ~]$ cd /test/
[test1@desktop0 test]$ touch c.txt
[test1@desktop0 test]$ ll
total 0
-rw-r--r--. 1 root  root     0 Jan 14 22:21 a.txt
-rw-rw-r--. 1 test1 test1    0 Jan 14 22:24 b.txt
-rw-rw-r--. 1 test1 GDevelps 0 Jan 14 22:25 c.txt


STIB:目录的粘滞位可以为文件删除设置特殊限制,仅文件所有者或root用户可以删除目录中的文件
只能删除自己的文件,不能删除其它人的文件

[root@desktop0 ~]# chmod o+t /test
[root@desktop0 ~]# ll -d /test
drwxrwsr-t. 3 root GDevelps 52 Jan 14 22:36 /test

[test1@desktop0 tmp]$ touch gmy.txt
[test1@desktop0 tmp]$ ll /tmp
total 0
-rw-rw-r--. 1 test1 test1  0 Jan 14 22:31 gmy.txt
-rw-rw-r--. 1 test1 test1  0 Jan 14 22:29 rsc.txt
drwx------. 3 root  root  16 Nov 15 19:31 systemd-private-6hXFLs
drwx------. 3 root  root  16 Aug 13  2015 systemd-private-bT5IET



是否可以删除一个文件的权限是查看文件所在目录的文件夹的权限,而不是查看文件本身的属性

要进入一个目录,目录一定要有x权限才能进入这个目录,对于目录一定是r-x及以上


符号表示:
setuid=u+x
setgid=g+x
sticky=o+t

数值表示:
setuid=4   
setgid=2  
sticky=1

2755 g+s u=rwx g=r-x o=r-x



umask

目录默认权限:755
系统默认配置
[root@desktop0 ~]# umask
0022
目录最大权限:777
777-022=755

修改umask值:
[root@desktop0 test]# umask 0077
[root@desktop0 test]# mkdir aede
[root@desktop0 test]# ll -d aede/
drwx--S---. 2 root GDevelps 6 Jan 14 22:51 aede/



文件权限:
文件最大权限:666
系统默认掩码:0022
666-022=644

[root@desktop0 test]# umask 0022
[root@desktop0 test]# >abce.txt
[root@desktop0 test]# ll abce.txt
-rw-r--r--. 1 root GDevelps 0 Jan 14 22:52 abce.txt

[root@desktop0 test]# ll abce.txt
-rw-r--r--. 1 root GDevelps 0 Jan 14 22:52 abce.txt
[root@desktop0 test]# stat abce.txt
  File: ?.bce.txt?
  Size: 0             Blocks: 0          IO Block: 4096   regular empty file
Device: fd01h/64769d    Inode: 2521764     Links: 1
Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: ( 1005/GDevelps)
Context: unconfined_u:object_r:default_t:s0
Access: 2018-01-14 22:52:23.715007313 +0800
Modify: 2018-01-14 22:52:23.715007313 +0800
Change: 2018-01-14 22:52:23.715007313 +0800


系统默认umask 在/etc/profile和/etc/bashrc中定义  #全局定义
用户默认umask 在.bash_profile和.bashrc文件中    #用户定义

一般用户的默认umask是002,系统管理员的默认umask是022







分割线
感谢打赏
江西数库信息技术有限公司
YWSOS.COM 平台代运维解决方案
 评论
 发表评论
姓   名:

Powered by AKCMS