天天看點

Linux基礎&權限的管理✍

檢視檔案時的詳細資訊:

d(檔案類型) r-xr-x—.(權限) 2 (硬連結次數) root (所屬使用者) root(所屬組) 6(檔案大小) Dec 11 15:02(檔案的最後一次修改時間) Music(檔案名)

Linux基礎&權限的管理✍

權限:rw-r–r-- 每三個為一個小組 ,分别時一下的權限:

屬主的權限u 屬組的權限g 其他人的權限o

權限分為三種 r w x

讀:r 4

寫:w 2

執行:x 1

在修改權限時也可直接 輸入數字進行更改 如一下 分别為數字對應權限

000 0 —

001 1 --x

010 2 -w-

011 3 -wx

100 4 r–

101 5 r-x

110 6 rw-

111 7 rwx

rwxr-xr-x:755

對于目錄和普通檔案 r w x 的含義

Linux基礎&權限的管理✍

修改權限 1. chmod 777 檔案名

chmod 6 A.txt (o)

chmod 66 A.txt (go)

chmod 777 A.txt (ugo)

2. [[email protected] ~]# chmod ugo=rwx A.txt

chmod u+w,o+x,g+r A.txt

chmod u/g/o/ +/=/- r /w/x 檔案名 (/中的分别随機組合進行修改權限) 加減隻能對自己本身存在的權限有影響,等号等于覆寫之前的檔案權限c

chown 修改 所屬使用者

chown 使用者名 檔案名

chown 使用者名**:組名 檔案名

chown 使用者名.**組名 檔案名

chown **.**組名 檔案名

chown : 組名 檔案名

chgrp 隻修改所屬組

chgrp 組名 檔案名

對目錄和檔案進行 r w x 的指令

Linux基礎&權限的管理✍

特殊權限

u+s

suid:讓程序不再屬于它的發起者,而是屬于程式檔案本身。(suid隻對二進制檔案有效;調用者對該檔案有執行權;在執行過程中,調用者會暫時獲得該檔案的所有者權限;該權限隻在程式執行的過程中有效)

查找passwd的程式檔案位置:which passwd

chmod u+s /usr/bin/passwd

先找到檢視指令的程式檔案位置,which cat

檢視文本檔案如果說 要求你執行的某種指令後産生的變化為統一的,則對該指令進行檢視 例如:實作一個功能,當使用任何使用者建立目錄的時候,它的所屬者為root。則對其指令進行

Linux基礎&權限的管理✍
Linux基礎&權限的管理✍

)

**sgid:g+s,**對于普通檔案,以組的權限執行修改/usr/bin/touch的g+s,touch檔案後檔案所屬組為root(作用于普通檔案時,和suid類似);對于目錄檔案,目錄的屬組是誰,在目錄下建立的檔案的屬組是目錄的屬組。

例如:.建立一個目錄為/exercise,在該目錄下建立一個目錄為red,實作一個功能:任何使用者在red目錄下建立檔案的時候的所屬組為redhat。

[[email protected] /]# mkdir /exercise

[[email protected] /]# mkdir /exercise/red

[[email protected] /]# chgrp redhat /exercise/red

[[email protected] /]# ll -d /exercise/red

drwxr-xr-x. 2 root redhat 6 Jan 26 16:52 /exercise/red

[[email protected] /]# chmod g+s /exercise/red/

[[email protected] /]# su xiaohong

[[email protected] /]$ touch /exercise/red/c

[[email protected] /]$ ll /exercise/red/

total 0

-rw-rw-r–. 1 xiaohong root 0 Jan 26 16:59 a

-rw-rw-r–. 1 xiaohong root 0 Jan 26 17:02 b

-rw-rw-r–. 1 xiaohong redhat 0 Jan 26 17:04 c

sticky,o+t:不能夠删除其他使用者在同目錄裡建立的檔案,也無法修改其他使用者建立的檔案的内容,可删除修改自己建立的檔案

例如:.在exercise目錄下建立一個目錄為nochange,任何普通使用者都隻能删除自己在該目錄下建立的檔案,無法删除其他使用者建立的檔案。

mkdir /exercise/nochange

[[email protected] /]# chmod o+t /exercise/nochange/

[[email protected] /]# ll -d /exercise/nochange/

drwxr-xr-t. 2 root root 6 Jan 26 17:05 /exercise/nochange/

[[email protected] /]# chmod o+w /exercise/nochange/

[[email protected] /]# su xiaohong

[[email protected] /]$ touch /exercise/nochange/a

[[email protected] /]$ exit

exit

[[email protected] /]# su redhat

[[email protected] /]$ touch /exercise/nochange/b

[[email protected] /]# su redhat

[[email protected] /]$ rm -f /exercise/nochange/b

[[email protected] /]$ rm -f /exercise/nochange/a

rm: cannot remove ‘/exercise/nochange/a’: Operation not permitted

[[email protected] /]$ ll /exercise/nochange/

total 0

-rw-rw-r–. 1 xiaohong xiaohong 0 Jan 26 17:08 a

**o+t 測試方法**
1.建立目錄/test 
2.添加三個使用者
3.讓每一個使用者在目錄裡面寫檔案
4.使用者3删除1和2使用者的檔案
5.目錄 o+t 
6.重複3、4步操作,驗證是否能夠删除其他使用者在同目錄裡建立的檔案
           

(如果說 要求你執行的某種指令後産生的變化為統一的,則對該指令進行檢視 例如:實作一個功能,當使用任何使用者建立目錄的時候,它的所屬者為root。則對其指令進行

Linux基礎&權限的管理✍
Linux基礎&權限的管理✍

)

ACL可以對某個檔案設定該檔案具體的某些使用者的權限,意思就是通過ACL可以對一個檔案權限做擴充,可以不同的使用者對某個檔案有不同的權限。

擷取檔案的通路控制資訊:getfacl 檔案名

sefacl 設定檔案的acl

修改檔案的acl:setfacl -m u:使用者名:權限 檔案名/目錄名

setfacl -m g:組名:權限 檔案名

setfacl -b 檔案名 (清空acl 權限)

setfacl -x g:組名 檔案名

檢視權限掩碼:umask 0022

目前面第一位為2和4權限就叫強制位,1的權限就是冒險位,2代表GID,4代表的是uid,1代表的是sticky

權限掩碼:控制建立檔案的權限

檢視權限掩碼:umask

修改權限掩碼:umask 022

普通檔案的權限屬性:666

目錄檔案的權限屬性:777

繼續閱讀