u 即檔案或目錄的擁有者;
g 即檔案或目錄的所屬群組;
o 其他使用者;
a 所有使用者(預設);
r 讀取,數字代號為「4」;
w 寫入,數字代號為「2」;
x 執行或切換,數字代號為「1」;
- 不具任何許可權,數字代號為「0」;
s 特殊功能說明:變更檔案或目錄的許可權。
id user1 #檢視使用者user1
useradd user1 #建立新使用者user1,useradd命令用於linux中建立的新的系統使用者賬號,再用passwd設定帳號的密碼。使用useradd指令所建立的帳號,實際上是儲存在/etc/passwd文字檔案中。
passwd user1 #設定user1的使用者密碼
userdel -r user1 #刪除使用者user1
gpasswd -a user1 root #把使用者user1加入root組
gpasswd -d user1 root #把root組中使用者user1刪除
groupadd mysql #建立mysql使用者組
su命令——使用者切換
格式:su 【options】 【使用者名稱】
options如下:
- 使用者想要切換到root
-l 後面可以接使用者名稱,可使用變換身份者的所有相關環境設定檔案
-m 使用當前環境設定,而不重新讀取新使用者的設定檔案
-c 僅進行一次命令,所以-c後面可以加命令
格式:ls(選項)(引數)
終端輸入:ls -l shell.text
顯示:-rw-
r--r-- 1 root root 0 oct 19 12:21 shell.txt
注釋:紅色部分代表:所有者,rw(讀寫)許可權。
黃色部分代表:所屬組,r(唯讀)的許可權。
藍色部分代表:其他使用者,r(唯讀)的許可權。
chmod u+x file 給file的屬主增加執行許可權
chmod 751 file 給file的屬主分配讀、寫、執行(7)的許可權,給file的所在組分配讀、執行(5)的許可權,給其他使用者分配執行(1)的許可權
chmod u=rwx,g=rx,o=x file 上例的另一種形式
chmod =r file 為所有使用者分配讀許可權
chmod -r u+r directory 遞迴地給directory目錄下所有檔案和子目錄的屬主分配讀的許可權
chmod 4755 設定用id,給屬主分配讀、寫和執行許可權,給組和其他使用者分配讀、執行的許可權。
檔案acl,訪問控制列表
傳統的許可權僅有三種身份(owner,group,others)搭配三種許可權(r,w,x),隨著應用的發展,這些許可權組合已不能適應現在複雜的檔案系統許可權控制要求。(對於乙個檔案,有乙個使用者不是所有者、也不在所有者組,然後單獨給他設定許可權,而不影響 其他使用者)
例如,目錄data的許可權為:drwxr-xr—x,所有者與所屬組均為root,在不改變所有者和所屬組的前提下,要求使用者test對該目錄有完全訪問許可權(rwx),但又不能讓其他有用完全許可權(rwx),這種情況就只能使用acl訪問控制列表許可權來控制了。
命令:getfacl:檢視檔案或目錄的acl設定內容
setfacl:設定檔案或目錄的acl內容
命令格式:
# setfacl [選項] 要修改的許可權 檔案
命令選項:
-m :新增acl引數
-x :刪除acl引數
-b :刪除所有的acl設定引數
-r :遞迴設定acl引數
設定格式如下
# setfacl -m u:test:rw 1.txt --為檔案1.txt設定test使用者可讀寫的acl許可權
# mkdir /test/a -p
# cd /test
# touch 1.txt
# ll
總用量 0
-rw-r--r-- 1 root root 0 7月 8 21:41 1.txt
drwxr-xr-x 2 root root 6 7月 8 21:39 a
開啟另乙個終端,並切換之test使用者測試1.txt是否可寫
設定使用者acl許可權
# setfacl -m u:user1:rwx 1.txt --多個使用者用逗號隔開
檢視設定後的許可權
# getfacl 1.txt
# file: 1.txt
# owner: root
# group: root
user::rw-
user:test:rwx --這裡可以看到剛剛設定的acl許可權
group::r--
mask::rwx
other::r--
設定acl的mask (mask 掩碼:允許的最高acl許可權)
# setfacl -m m::r 1.txt
檢視1.txt的許可權和之前有什麼不同
# file: 1.txt
# owner: root
# group: root
user::rw-
user:test:rwx #effective:r-- --這裡會有乙個警告,因為acl的許可權大於了掩碼的最高許可權,此時的test使用者依舊不可寫
group::r--
mask::r--
other::r--
為目錄設定預設acl許可權,設定後,在該目錄內建立的檔案依然繼承該acl
# setfacl -m d:user1:rw a/
# mkdir b
# touch b/1.txt
# touch a/1.txt
# getfacl a/1.txt
# file: a/1.txt
# owner: root
# group: root
user::rw-
user:test:rw-
group::r-x #effective:r--
mask::rw-
other::r--
# getfacl b/1.txt
# file: b/1.txt
# owner: root
# group: root
user::rw-
group::r--
other::r--
刪除acl許可權
# setfacl -x u:user1 1.txt
# setfacl -b 1.txt
遞迴設定acl引數
# mkdir /test/b
# touch /test/b/1.txt
# setfacl -m u:user1:rw /test/b
# getfacl /test/b
# file: b/
# owner: root
# group: root
user::rwx
user:user1:rw-
group::r-x
mask::rwx
other::r-x
# getfacl /test/b/1.txt
# file: b/1.txt
# owner: root
# group: root
user::rw-
group::r--
other::r--
# setfacl -rm u:user1:rw /test/b 遞迴設定acl許可權後,目錄下所有內容均會擁有相同的acl許可權
# file: b/1.txt
# owner: root
# group: root
user::rw-
user:user1:rw-
group::r--
mask::rw-
other::r--
Linux使用者及許可權
計算資源 許可權 使用者 使用者組 容器,關聯許可權使用者組,方便的指派許可權 使用者 獲取資源或服務的標識 程序安全上下文 secure context 許可權 r w x 檔案 r 可讀 檢視 w 可寫 編輯或刪除 x 可執行 當作命令提交給核心 目錄 r 可對此目錄ls w 在此目錄建立檔案 ...
Linux使用者及許可權
庫 lib 共享庫 so shared object,許可權 使用者,獲取資源,服務的識別符號 組,指派許可權,識別符號 程序 以某個使用者的身份在進行,有屬主和屬組 安全上下文 security context linux許可權,三組使用者 檔案屬主,檔案的所有者 檔案屬組,檔案的原生組 其他使用...
Linux 使用者及使用者許可權詳解
使用者 組 許可權 許可權 r,w,x 檔案 r 可讀,可以使用類似cat等命令檢視檔案內容 w 可讀,可以編輯或刪除此檔案 x 可執行,可以命令提示符下當做命令提交給核心執行 目錄 r 可以對此目錄執行ls以列出內部的所有檔案 w 可以在此目錄中建立檔案 x 可以使用cd切換進此目錄,也可以使用l...