文件基本權(quán)限UGO:
設(shè)置權(quán)限
1.更改文件的屬主僵朗、屬組
使用chown:
[root@physical ~]# chown alice.hr file //改屬主、屬組
[root@physical ~]# chown alice file //只改屬主
[root@physical ~]# chown .hr file //只改屬組
[root@physical ~]# chown -R alice.hr dir //更改dir文件夾及下面的權(quán)限
使用chgrp:
[root@physical ~]# chgrp hr file //改文件屬組
[root@physical ~]# chgrp -R hr dir //改文件屬組 //以長模式方式查看文件權(quán)限
2.更改權(quán)限:
a.使用符號:
[root@physical ~]# chmod u+x file //屬主增加執(zhí)行
[root@physical ~]# chmod a=rwx file //所有人等于讀寫執(zhí)行
[root@physical ~]# chmod a=- file //所有人沒有權(quán)限
[root@physical ~]# chmod ug=rw,o=r file //屬主屬組等于讀寫屑彻,其他人只讀
[root@physical ~]# ll file //以長模式方式查看文件權(quán)限
b. 使用數(shù)字
[root@physical ~]# chmod 666 file //更改為ugo都具有讀寫功能
ACL設(shè)置基本權(quán)限
[root@physical ~]# getfacl /home/test.txt //查看文件ACL權(quán)限
[root@physical ~]# setfacl -m u:alice:rw /test.txt //增加用戶alice權(quán)限
[root@physical ~]# setfacl -m u:jack:-,g:hr:rw /test.txt //增加用戶jack權(quán)限
[root@physical ~]# setfacl -m o::rw /test.txt //增加其他人對文件的讀寫權(quán)限
[root@physical ~]# setfacl -x g:hr /test.txt //刪除組hr的acl權(quán)限
[root@physical ~]# setfacl -b /test.txt //刪除所有acl權(quán)限
[root@physical ~]# getfacl file1 |setfacl --set-file=- file2 //復(fù)制file1的ACL權(quán)限給file2
文件權(quán)限管理之高級權(quán)限:
a验庙、字符
chmod u+s file
chmod g+s dir
chmod o+t dir
b、數(shù)字
chmod 4777 file //粗體黑字為高級權(quán)限
chmod 7777 file
chmod 2770 dir
chmod 3770 dir
示例1:suid 普通用戶通過suid提權(quán)
[root@physical ~]# chmod u+s /bin/rm
[root@physical ~]# chmod u+s /bin/vim
示例2:sticky 用戶只能刪除自己的文件 <針對目錄>
作用:任何用戶在擁有t權(quán)限的目錄下,只能刪除自己的文件
示例3:sgid 新建文件繼承目錄屬組 <針對目錄>
作用:任何用戶在擁有sgid的目錄下新建的文件,都要繼承該目錄的屬組
文件權(quán)限管理之文件屬性
注:設(shè)置文件屬性社牲,針對所有用戶粪薛,包括root,屬性凌駕于權(quán)限之上
[root@physical ~]# chattr +a file //僅僅允許追加內(nèi)容
[root@physical ~]# chattr +i file //不可變的搏恤,不允許追加违寿,覆蓋和刪除,包括移動
文件權(quán)限管理之:umask
root: umask: 0022 則: 文件 644 目錄 755
普通用戶:umask: 000 則: 文件 664 目錄 775
示例1:修改shell umask值(臨時)
[root@physical ~]# umask 000
[root@physical ~]# mkdir dir1
[root@physical ~]# touch file1
[root@physical ~]# ll -d dir900 file900
drwxrwxrwx. dir1
-rw-rw-rw-. file1
示例2:修改shell umask值(永久)
[root@physical ~]# vim /etc/profile
if [ $UID -gt 199 ] && [ "id -gn
" = "id -un
" ]; then
umask 002
else
umask 022
fi
[root@xiaochen ~]# source /etc/profile //立即在當(dāng)前shell中生效