1. 程式人生 > >LINUX入門筆記--許可權管理命令--許可權管理命令chmod

LINUX入門筆記--許可權管理命令--許可權管理命令chmod

chmod

命令名稱:chmod

命令英文原意:change the permissions mode of a file

命令所在路徑/bin/chmod

執行許可權:所有使用者

語法:chmod [{ugoa}{+-=}{rwx}] [檔案或目錄]

           chmod [mode=421] [檔案或目錄]

           -R  遞迴修改

功能描述:改變檔案或目錄的許可權

解釋:u所有者,g所處組,o其他人,a所有使用者, +增加許可權,-減少許可權,=不管你原來是什麼許可權現在我給你的許可權改了相當於賦值的意思

許可權的數字表示:r----4,w----2,x----1.例如一個目錄的許可權位是rwxrw-r--,那麼u就是7(4+2+1),g是6(4+2+0),o是4(4+0+0)

範例:

1.如下面兩幅圖 第一幅圖 我用mkdir建立了一個a1目錄,用ls檢視這個目錄之後可以檢視到a1的許可權(還有/tmp下別的檔案,在這裡我沒有截圖,只截了a1部分),d代表他是目錄檔案,所有者rwx三個許可權都有,所處組和其他人只有rx兩個許可權。如圖2用chmod命令讓u(所有者)的許可權-x(執行),再用ls檢視發現發現前面的許可權位第四個位置由x變成了-。

2.如下面的三幅圖,圖1作為對比圖,圖2給所處組的許可權加了一個w,其他人的許可權減去一個r,圖三許可權位已經做出了改變。這個例子的意思是同時操作兩個許可權位時,中間用,隔開而不是空格。

 

3.要掌握給一個許可權位可以寫出來他的數字表示,給一個數字表示可以寫出他的許可權位!!!

如果我想把a1的許可權改為rw-r----- 只需要寫出這個的許可權位就可以了(640),不用再u=...,g=...,o=...了,如下圖的例子。圖1是改變之前的結果,圖二是操作命令和改變之後的結果。

4.-R選項是遞迴改變許可權位。類似於mkdir裡-p是遞迴建立檔案一樣,這裡遞迴改變許可權位的意思是不僅把你指明路徑下的目錄的許可權位改了,而且把這個目錄下所有的檔案或目錄的許可權位都改了。如下圖,

第一行是我在臨時目錄下遞迴建立了a和b兩個目錄;第二行是檢視a目錄的詳細資訊,第三行是結果(許可權位是rwxr-xr-x);第四行是檢視目錄a下的目錄b的詳細資訊,第五行是結果(許可權位是rwxr-xr-x);第六行是沒有用遞迴改變目錄a的許可權位的操作命令;第七行是檢視a目錄的詳細資訊,第八行是結果(許可權位是rwxrwxrwx);第九行是檢視a目錄的詳細資訊,第十行是結果(許可權位是rwxr-xr-x);所以,經過那個操作改變的只是a的許可權位,而並沒有改變a下面目錄或檔案的許可權位。第十一行是用遞迴(-R)改變目錄a的許可權位的操作命令;後面兩個命令是檢視a和b的詳細資訊,可以從結果看出許可權位都改變了。這就是遞迴改變許可權位的作用----不僅改變指明目錄,還會改變指明目錄下所有的目錄和檔案,讓他們的許可權位變成你所指定的。

對目錄和檔案rwx許可權的解讀:刪除一個檔案的前提不是對檔案有w操作,而是對檔案所在目錄有w操作。對檔案有w操作只能說明可以對檔案內容進行修改,而不是可以對檔案有刪除增加操作。

檔案目錄許可權總結
代表字元 許可權 對檔案的含義 對目錄的含義
r 讀許可權 可以檢視檔案內容 可以列出目錄中的內容
w 寫許可權 可以修改檔案內容 可以在目錄中建立,刪除檔案
x 執行許可權 可以執行檔案 可以進入目錄