linux可以改變文件的權(quán)限。在linux中,可以利用chmod命令來修改文件權(quán)限,語法“chmod [-cfvR] [–help] [–version] mode file…”;chmod會根據(jù)mode值來更改每個給定文件的文件模式位,mode值可以是要進行更改的符號模式表示,也可以是表示新模式位的位模式的八進制數(shù)。
本教程操作環(huán)境:linux7.3系統(tǒng)、Dell G3電腦。
文件權(quán)限對于一個系統(tǒng)是很重要的,且每個文件都設(shè)定了針對不同用戶的訪問權(quán)限,那么,是否可以手動修改文件的訪問權(quán)限呢?
在linux中,可以利用chmod命令來修改文件權(quán)限。下面帶大家了解一下chmod命令。
一、chmod命令簡介
Linux chmod(英文全拼:change mode)命令是控制用戶對文件的權(quán)限的命令。
chmod根據(jù)mode更改每個給定文件的文件模式位,mode可以是要進行更改的符號模式表示,也可以是表示新模式位的位模式的八進制數(shù)。
符號模式的格式為[ugoa…][±=][perms…][…],其中perms為集合rwxXst中的零個或多個字母,或集合ugo中的單個字母。可以給出多個符號模式,用逗號分隔。
字母ugoa的組合控制哪些用戶對文件的訪問將被更改:擁有該文件的用戶(u)、文件組中的其他用戶(g)、不在文件組中的其他用戶(o)或所有用戶(A)。
如果這些都沒有給出,效果就好像給出了a,但umask中設(shè)置的位不受影響。chmod從不更改符號鏈接的權(quán)限;chmod系統(tǒng)調(diào)用無法更改其權(quán)限。
二、權(quán)限介紹
??Linux/unix 的文件調(diào)用權(quán)限分為三級 : 文件所有者(Owner)、用戶組(Group)、其它用戶(Other Users)。
??只有文件所有者和超級用戶可以修改文件或目錄的權(quán)限。可以使用絕對模式(八進制數(shù)字模式),符號模式指定文件的權(quán)限。
權(quán)限符號 | 名字 | 說明 |
---|---|---|
r | 讀 | 設(shè)置為可讀權(quán)限 |
w | 寫 | 設(shè)置為可寫權(quán)限 |
x | 執(zhí)行權(quán)限 | 設(shè)置為可執(zhí)行權(quán)限 |
X | 特殊執(zhí)行權(quán)限 | 只有當(dāng)文件為目錄文件,或者其他類型的用戶有可執(zhí)行權(quán)限時,才將文件權(quán)限設(shè)置可執(zhí)行 |
s | setuid/gid | 當(dāng)文件被執(zhí)行時,根據(jù)who參數(shù)指定的用戶類型設(shè)置文件的setuid或者setgid權(quán)限 |
t | 粘貼位 | 設(shè)置粘貼位,只有超級用戶可以設(shè)置該位,只有文件所有者u可以使用該位 |
三、使用示例
1、獲取命令幫助信息
[root@s141?~]#?chmod?--help
2、查看命令版本
[root@s141?~]#?chmod?--version ?chmod?(GNU?coreutils)?8.22 ?Copyright???2013?Free?Software?Foundation,?Inc. ?License?GPLv3+:?GNU?GPL?version?3?or?later?http://gnu.org/licenses/gpl.html. ?This?is?free?software:?you?are?free?to?change?and?redistribute?it. ?There?is?NO?WARRANTY,?to?the?extent?permitted?by?law. ?Written?by?David?MacKenzie?and?Jim?Meyering.
3、給所有用戶增加文件執(zhí)行權(quán)限
4、取消其他用戶的執(zhí)行權(quán)限
5、使用八進制數(shù)值整體設(shè)置權(quán)限
[root@s141?~]#?chmod?751?1.txt
6、遞歸設(shè)置目錄及文件權(quán)限
[root@s141?~]#?chmod?-R?760?/home/test
7、顯示權(quán)限修改的詳細(xì)信息
[root@s141?~]#?chmod?-Rv?760?/home/test ?mode?of?‘/home/test’?retained?as?0760?(rwxrw----) ?mode?of?‘/home/test/.bash_logout’?retained?as?0760?(rwxrw----) ?mode?of?‘/home/test/.bash_profile’?retained?as?0760?(rwxrw----) ?mode?of?‘/home/test/.bashrc’?retained?as?0760?(rwxrw----) ?mode?of?‘/home/test/1’?retained?as?0760?(rwxrw----) ?mode?of?‘/home/test/2’?retained?as?0760?(rwxrw----)
8、只有權(quán)限發(fā)生改變時顯示
9、使用符號設(shè)置權(quán)限
[root@s141?~]#?chmod?o=r,u=rwx,g=rx?1.txt
10、給目錄設(shè)置t權(quán)限
四、使用語法及參數(shù)說明
1、使用語法
chmod?[-cfvR]?[--help]?[--version]?mode?file...
用法一:chmod 權(quán)限 文件
用法二:chmod 參數(shù) 權(quán)限 文件
2、參數(shù)說明
參數(shù) | 參數(shù)說明 |
---|---|
-c | 若該文件權(quán)限確實已經(jīng)更改,才顯示其更改動作 |
-f | 若該文件權(quán)限無法被更改也不要顯示錯誤訊息 |
-v | 顯示權(quán)限變更的詳細(xì)資料 |
-R | 對目前目錄下的所有文件與子目錄進行相同的權(quán)限變更(即以遞歸的方式逐個變更) |
–help | 顯示輔助說明 |
–version | 顯示版本 |
3、操作符說明
operator | 說明 |
---|---|
+ | 為指定的用戶類型增加權(quán)限 |
– | 去除指定用戶類型的權(quán)限 |
= | 設(shè)置指定用戶權(quán)限的設(shè)置,即將用戶類型的所有權(quán)限重新設(shè)置 |
4、用戶符號
who | 用戶類型 | 說明 |
---|---|---|
u | user | 文件所有者 |
g | group | 文件所有者所在組 |
o | others | 所有其他用戶 |
a | all | 所用用戶, 相當(dāng)于 ugo |
相關(guān)推薦:《Linux視頻教程》