天天看點

linux中chmod與chown兩個指令詳解 - nickTimer

linux中chmod與chown兩個指令詳解

在linux系統中chmod,chown指令都可以來設定權限了,但它們也是有差別的,下文小編為各位介紹chmod與chown兩個指令用法與差別介紹。

今天要分享的2個指令也是我們平時常用的,chmod與chown看似拼寫還有點差不多,但是兩者的用途是不同的。chmod是用來設定檔案夾和檔案權限的,比如我們在VPS主機中檔案不可讀寫,需要用來設定777權限;而chown是用來設定使用者組的,比如授權某使用者組,友善控制使用者權限。

具體的使用我們用執行個體解答,那些所謂的各種參數指令我不喜歡分享,因為平時也用不到,直接用實用的。

第一、使用權限 : 所有使用者

使用方式 : chmod [-cfvR] [--help] [--version] mode file...

說明 : Linux/Unix 的檔案存取權限分為三級 : 檔案擁有者、群組、其他。利用 chmod 可以藉

以控制檔案如何被他人所存取。

mode : 權限設定字串,格式如下 : [ugoa...][[+-=][rwxX]...][,...],其中u 表示該檔案的擁有

者,g 表示與該檔案的擁有者屬于同一個群體(group)者,o 表示其他以外的人,a 表示這三者皆

是。

+ 表示增權重限、- 表示取消權限、= 表示唯一設定權限。 

r 表示可讀取,w 表示可寫入,x 表示可執行,X 表示隻有當該檔案是個子目錄或者該檔案已經被

設定過為可執行。 

-c : 若該檔案權限确實已經更改,才顯示其更改動作 

-f : 若該檔案權限無法被更改也不要顯示錯誤訊息 

-v : 顯示權限變更的詳細資料 

-R : 對目前目錄下的所有檔案與子目錄進行相同的權限變更(即以遞回的方式逐個變更) 

--help : 顯示輔助說明 

--version : 顯示版本

比如 : chmod -R 777 /www/itbulu.com/wp-content/*

代表設定上述檔案夾下所有檔案可讀寫,也可以這樣。

cd wp-content

chmod -R 777 *

第二、指令名稱 : chown

使用權限 : root

使用方式 : chown [-cfhvR] [--help] [--version] user[:group] file... 

說明 : Linux/Unix 是多人多工作業系統,所有的檔案皆有擁有者。利用 chown 可以将檔案的擁

有者加以改變。一般來說,這個指令隻有是由系統管理者(root)所使用,一般使用者沒有權限可以

改變别人的檔案擁有者,也沒有權限可以自己的檔案擁有者改設為别人。隻有系統管理者(root)才

有這樣的權限。

user : 新的檔案擁有者的使用者 ID

group : 新的檔案擁有者的使用者群體(group)

-c或-change:作用與-v相似,但隻傳回修改的部分 

-f或–quiet或–silent:不顯示錯誤資訊 

-h或–no-dereference:隻對符号連結的檔案做修改,而不更改其他任何相關檔案 

-R或-recursive:遞歸處理,将指定目錄下的所有檔案及子目錄一并處理 

-v或–verbose:顯示指令執行過程 

–dereference:作用和-h剛好相反 

–help:顯示線上說明 

–reference=<參考檔案或目錄>:把指定檔案或目錄的所有者與所屬組,統統設定成和參考檔案或目錄的所有者與所屬組相同 

–version:顯示版本資訊

chown -R www:www /home/wwwroot/*

解釋:-R遞歸處理所有檔案和檔案夾,第一個www代表檔案的擁有者名稱,第二個www代表所屬群組名稱。

chown與chmod指令的差別

chown 修改檔案和檔案夾的使用者和使用者組屬性

1。要修改檔案hh.c的所有者.修改為sakia的這個使用者所有

chown sakia hh.c

這樣就把hh.c的使用者通路權限應用到sakia作為所有者

2。将目錄 /tmp/sco 這個目錄的所有者群組改為sakia群組net

chown -R sakia:net /tmp/sco

chmod 修改檔案和檔案夾讀寫執行屬性

1。把hh.c檔案修改為可寫可讀可執行

chmod 777 hh.c

要修改某目錄下所有的檔案屬性為可寫可讀可執行

chmod 777 *.*

把檔案夾名稱與字尾名用*來代替就可以了。 

同理若是要修改所有htm檔案的屬性

chmod 777 *.htm

2。把目錄 /tmp/sco修改為可寫可讀可執行

chmod 777 /tmp/sco

要修改某目錄下所有的檔案夾屬性為可寫可讀可執行

chmod 777 *

把檔案夾名稱用*來代替就可以了

要修改/tmp/sco下所有的檔案和檔案夾及其子檔案夾屬性為可寫可讀可執行

chmod -R 777 /tmp/sco

可寫 w=4 

可讀 r=2 

可執行 x=1 

777就是擁有全權限。根據需要可以自由組合使用者群組的權限