提升工作效率!高效管理Linux文件權(quán)限的實(shí)用方法
共 3495字,需瀏覽 7分鐘
·
2024-10-30 20:02
權(quán)限的意義在于允許某一個(gè)用戶或某個(gè)用戶組以規(guī)定的方式去訪問(wèn)某個(gè)文件。
基本權(quán)限UGO
首先介紹U、G、O這三個(gè)字母所代表的含義。
U:owne,屬主
G:group,屬組
O:other,其他用戶
Linux系統(tǒng)通過(guò)U、G、O將用戶分為三類,并對(duì)這三類用戶分別設(shè)置三種基本權(quán)限,這種設(shè)置權(quán)限的方式稱作UGO方式。
每個(gè)文件針對(duì)每類訪問(wèn)者定義了三種主要權(quán)限
r:Read 讀,數(shù)字設(shè)定為4
w:Write 寫 ,數(shù)字設(shè)定為2
x:execute 執(zhí)行,數(shù)字設(shè)定為1
| Linux表示 | 說(shuō)明 | Linux表示 | 說(shuō)明 |
|---|---|---|---|
| r-- | 只讀 | -w- | 只寫 |
| --x | 僅可執(zhí)行 | rw- | 可讀寫 |
| r-x | 可讀和執(zhí)行 | -wx | 可寫和執(zhí)行 |
| rwx | 可讀可寫可執(zhí)行 | --- | 沒(méi)有任何權(quán)限 |
對(duì)于文件和目錄來(lái)說(shuō),r,w,x有著不同的作用和含義:
針對(duì)文件:
r:讀取文件內(nèi)容
w:修改文件內(nèi)容
x:執(zhí)行權(quán)限對(duì)除二進(jìn)制程序以外的文件沒(méi)什么意義
針對(duì)目錄:目錄本質(zhì)可看做是存放文件列表、節(jié)點(diǎn)號(hào)等內(nèi)容的文件
r:查看目錄下的文件列表
w:刪除和創(chuàng)建目錄下的文件
x:可以cd進(jìn)入目錄,能查看目錄中文件的詳細(xì)屬性,能訪問(wèn)目錄下文件內(nèi)容(基礎(chǔ)權(quán)限)
設(shè)置文件屬性與權(quán)限
為了數(shù)據(jù)的安全,系統(tǒng)需要給予不同身份的用戶、用戶組對(duì)應(yīng)的文件權(quán)限。下面講解三個(gè)常用的修改權(quán)限命令。
chown:修改文件屬主、屬組。
chgrp:修改文件屬組。
chmod:修改文件權(quán)限。
1.更改文件權(quán)限(chmod命令)
chmod [可選項(xiàng)] <mode> <file...>
設(shè)置所有用戶可讀取文件 a.conf
chmod ugo+r a.conf
或
chmod a+r a.conf
設(shè)置 c.sh 只有 擁有者可以讀寫及執(zhí)行
chmod u+rwx c.sh
設(shè)置文件 a.conf 與 b.xml 權(quán)限為擁有者與其所屬同一個(gè)群組 可讀寫,其它組可讀不可寫
chmod a+r,ug+w,o-w a.conf b.xml
設(shè)置當(dāng)前目錄下的所有檔案與子目錄皆設(shè)為任何人可讀寫
chmod -R a+rw *
或使用數(shù)字權(quán)限改寫格式:
設(shè)置所有人可以讀寫及執(zhí)行
chmod 777 file (等價(jià)于 chmod u=rwx,g=rwx,o=rwx file 或 chmod a=rwx file)
設(shè)置擁有者可讀寫,其他人不可讀寫執(zhí)行
chmod 600 file (等價(jià)于 chmod u=rw,g=---,o=--- file 或 chmod u=rw,go-rwx file )
2.更改文件擁有者(chown命令)
chown [可選項(xiàng)] user[:group] file...
使用權(quán)限:root
設(shè)置文件 d.key、e.scrt的擁有者設(shè)為 users 群體的 tom
chown tom:users file d.key e.scrt
設(shè)置當(dāng)前目錄下與子目錄下的所有文件的擁有者為 users 群體的 James
chown -R James:users *
3.修改所屬組(chgrp命令)
chown user1 f1 #f1文件擁有者修改為user1
基本權(quán)限ACL
UGO權(quán)限只針對(duì)一個(gè)用戶、一個(gè)組與其他用戶,使用上有局限性,ACL主要提供傳統(tǒng)的UGO的r、w、x權(quán)限之外的具體權(quán)限設(shè)置,可以對(duì)單一用戶、單一文件或目錄進(jìn)行權(quán)限設(shè)置
ACL基本用法
創(chuàng)建一個(gè)文件,使用getfacl命令查看ACL權(quán)限
touch /home/test.txt
getfacl /home/test.txt
setfacl命令可以設(shè)置ACL權(quán)限,對(duì)每一個(gè)文件或者目錄進(jìn)行更精確的權(quán)限設(shè)置,添加"-m"參數(shù)可以修改當(dāng)前文件ACL權(quán)限。
setfacl -m u:alice:rw /home/test.txt
這時(shí)使用getfacl命令查看,用戶alice的權(quán)限已修改為"rw-"
mask 權(quán)限和 default 權(quán)限
mask權(quán)限
mask權(quán)限用于限制用戶的權(quán)限。當(dāng)用戶的權(quán)限超過(guò) mask 權(quán)限時(shí),將使用 mask 權(quán)限作為用戶的實(shí)際權(quán)限。即mask項(xiàng)就是ACL的最大有效權(quán)限。
setfacl [options] [file] [mask]
options:可選參數(shù),用于指定修改 mask 權(quán)限的方式。file:指定要修改 mask 權(quán)限的文件。mask:指定 mask 權(quán)限。
mask 權(quán)限可以使用 -m 選項(xiàng)來(lái)指定。例如,要將文件的 mask 權(quán)限修改為 rw-,可以使用以下命令:
setfacl -m m::rw- file
default權(quán)限
default 權(quán)限在 ACL(Access Control List)中的繼承行為是為了方便和簡(jiǎn)化權(quán)限管理。當(dāng)我們?cè)谝粋€(gè)目錄上設(shè)置了 default 權(quán)限時(shí),這些權(quán)限會(huì)自動(dòng)應(yīng)用于該目錄下新創(chuàng)建的文件或子目錄。
setfacl [options] [directory] [default]
options:可選參數(shù),用于指定修改 default 權(quán)限的方式。directory:指定要修改 default 權(quán)限的目錄。default:指定 default 權(quán)限。
default 權(quán)限可以使用 -d 選項(xiàng)來(lái)指定。例如,要將目錄的 default 權(quán)限修改為 rw-,可以使用以下命令:
setfacl -d d::rw- directory
mask 權(quán)限和 default 權(quán)限的注意事項(xiàng)
mask 權(quán)限和 default 權(quán)限都使用
::來(lái)表示所有用戶。mask 權(quán)限和 default 權(quán)限可以使用數(shù)字或符號(hào)來(lái)表示權(quán)限。
mask 權(quán)限和 default 權(quán)限的權(quán)限范圍必須在
-和rwx之間。
文件權(quán)限的應(yīng)用
文件權(quán)限可以用于以下應(yīng)用:
控制用戶對(duì)文件的訪問(wèn)權(quán)限。
防止惡意程序的執(zhí)行。
保護(hù)文件的安全。
鏈接:https://www.cnblogs.com/sangzhi/p/17863454.html
(版權(quán)歸原作者所有,侵刪)
