一、chmod基本概念
chmod是一個用於修改文件或目錄許可權的命令。可以對文件或目錄的讀(r)寫(w)執行(x)許可權進行修改。r表示讀取許可權,w表示寫許可權,x表示執行許可權。每個文件或目錄都有三組許可權,分別為文件擁有者(user)、用戶組(group)和其他人(other)。因此可以使用chmod命令對文件或目錄的這些許可權進行設置。
二、chmod使用方法
使用chmod命令需要使用該命令的選項和參數。
其中選項包括:-R(遞歸修改),-v(顯示許可權修改的過程),-c(只有發生修改時才顯示)等等。
參數包括:數字形式的許可權表示法(如777)、符號形式的許可權表示法(如u+rwx)以及指定用戶和用戶組的身份。
下面是chmod命令的基本語法:
chmod [選項] [參數] 文件或目錄路徑
例如,要將file.txt文件許可權修改為讀寫執行都允許,可以使用以下命令:
chmod 777 file.txt
三、數字形式的許可權表示法
數字形式的許可權表示法是最常用的一種許可權設置方式。數字形式的許可權表示法是一個三位八進位數。
其中每一位分別表示文件擁有者、用戶組和其他人的許可權。許可權值分別為4(讀取許可權)、2(寫入許可權)和1(執行許可權)的和。
例如,將讀寫執行許可權都分配給所有用戶的許可權值為777(4+2+1=7),將讀寫分配給擁有者、讀分配給組和其他用戶的許可權值為644(4+2+0=6、4+0+4=4)。
四、符號形式的許可權表示法
符號形式的許可權表示法是一種更為直觀的表達方式。通過表達想要添加或者刪除的許可權,來修改文件或者目錄的許可權設置。其中包括三種許可權(r、w和x)、三種身份(u、g和o)以及三個操作符(+、-和=)。
其中操作符表示添加(+)、刪除(-)或者直接設置(=)許可權,身份表示文件擁有者、組和其他人,許可權表示讀、寫和執行。
例如,要將file.txt的擁有者添加執行許可權,可以使用以下命令:
chmod u+x file.txt
要將file.txt的所有用戶都添加讀許可權和執行許可權,可以使用以下命令:
chmod a+rx file.txt
五、許可權的特殊設置
chmod命令也支持一些特殊許可權的設置,其中包括SUID、SGID和StickyBit。
SUID可以使得用戶在執行該文件的時候以文件擁有者身份執行,具有該文件擁有者的許可權。SGID可以將文件或目錄的組許可權設置為執行它的用戶所在的用戶組許可權。StickyBit可以防止其他用戶刪除已經擁有者改用戶組許可權的文件或目錄。
要為file.txt添加SUID許可權,可以使用以下命令:
chmod u+s file.txt
六、遞歸修改目錄許可權
如果需要修改一個目錄及其下面的所有文件和子目錄的許可權,就需要使用到遞歸修改許可權。
可以使用chmod命令的-R選項來進行遞歸修改。例如,要遞歸修改dir目錄及其下面的所有文件和子目錄的許可權為777,可以使用以下命令:
chmod -R 777 dir/
七、顯示許可權修改過程
當需要了解到具體的許可權修改過程時,可以使用chmod命令的-v選項。該選項會在許可權發生變化時顯示許可權修改後的許可權信息。
例如,要將file.txt許可權修改為777並顯示許可權修改過程,可以使用以下命令:
chmod -v 777 file.txt
八、只顯示發生修改的許可權信息
當只需要顯示發生許可權修改的時候,可以使用chmod命令的-c選項。該選項只有在真正發生許可權修改時才會顯示具體的許可權修改信息。
例如,要將file.txt許可權修改為777並只顯示發生修改的許可權信息,可以使用以下命令:
chmod -c 777 file.txt
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/245220.html