一、命令介紹 chmod 命令,是Linux管理員最常用的命令之一,用於修改文件或目錄的訪問許可權。 Linux系統中,每一個文件都有文件所有者和所屬群組,並且規定文件的所有者,所屬群組,以及其他人隊問價有讀取(r), 可寫(w),執行(x)等許可權, 亦可分別用數字4、2、1 表示。 文件的可讀、可寫 ...
一、命令介紹
chmod 命令,是Linux管理員最常用的命令之一,用於修改文件或目錄的訪問許可權。
Linux系統中,每一個文件都有文件所有者和所屬群組,並且規定文件的所有者,所屬群組,以及其他人隊問價有讀取(r), 可寫(w),執行(x)等許可權,
亦可分別用數字4、2、1 表示。
文件的可讀、可寫、可執行許可權可以簡寫為rwx,也可以使用數字7表示(4+2+1)。
許可權設定字元串格式如下:
[ugoa...][[+-=][rwxX]...][,...]
其中
- u 表示該文件的擁有者,g 表示與該文件的擁有者屬於同一個群體(group)者,o 表示其他以外的人,a 表示這三者皆是。
- + 表示增加許可權、- 表示取消許可權、= 表示唯一設定許可權。
- r 表示可讀取,w 表示可寫入,x 表示可執行,X 表示只有當該文件是個子目錄或者該文件已經被設定過為可執行。
參數
- -c : 若該文件許可權確實已經更改,才顯示其更改動作
- -f : 若該文件許可權無法被更改也不要顯示錯誤訊息
- -v : 顯示許可權變更的詳細資料
- -R : 對目前目錄下的所有文件與子目錄進行相同的許可權變更(即以遞迴的方式逐個變更)
----------------------------------------------------------------------------------------------------
二、實例
使用chmod命令修改文件 1 訪問許可權,使所有者,群組,以及其他人都有rwx許可權。
chmod ugo+rwx 1
chmod 777 1
如果我們想要所有人都具有文件2的rwx許可權,可以使用
chmod a+rwx 2
我們想要在文件2現有許可權的基礎上修改文件所有者及所屬群組具有rwx許可權,而其他人只具有r許可權。
chmod ug=rwx o-wx 2
我們新建一個文件3,使其具有同文件2相同的許可權
chmod 774 3
我們新建一個目錄new,併在目錄中新建文件1 和 文件2 .如果要修改new目錄和目錄中的所有文件許可權為777,這時我們九需要使用 R參數。
chmod -Rf 777 new
--------------------------------------------------------------------------------------------------------------------------
三、總結
chmod命令使Linux管理員最常用的命令之一,可見他對於Linux系統管理相當重要。
目錄的讀寫許可權和文件的讀寫許可權區別很明顯,前者是可以列出目錄下的文件和創建新文件,後者就是讀取文件的內容和向文件寫入。對於執行許可權的區別我的理解是
如果對目錄沒有執行許可權,但是對目錄下的文件有執行許可權,那麼相當於對該文件也沒有許可權
如果對目錄有執行許可權,但是目錄下的文件沒有執行許可權,相當於對該文件也沒有許可權
所以要執行一個目錄下的文件,必須目錄和文件都具有執行許可權。
文章不當之處,望指正。