chown 和 chmod 的區別:
一,chown
文件/目錄權限設置命令:chmod 這是Linux系統管理員最常用到的命令之一,它用於改變文件或目錄的訪問權限。
使用方式 : chmod [-cfvR] [--help] [--version] mode file…
[-cfvR]诠釋:----
-c : 若該檔案權限確實已經更改,才顯示其更改動作
-f : 若該檔案權限無法被更改也不要顯示錯誤訊息
-v : 顯示權限變更的詳細資料
-R : 對目前目錄下的所有檔案與子目錄進行相同的權限變更(即以遞回的方式逐個變更)
--help : 顯示輔助說明
--version : 顯示版本
該命令有兩種用法:
一,用包含字母和操作符表達式的文字設定法
其語法格式為:chmod [who] [opt] [mode] 文件/目錄名
其中who表示對象,是以下字母中的一個或組合:
u:表示文件所有者
g:表示同組用戶
o:表示其它用戶
a:表示所有用戶
opt則是代表操作,可以為: +:添加某個權限 -:取消某個權限 =:賦予給定的權限,並取消原有的權限
mode則代表權限:
r:可讀
w:可寫
x:可執行 表示只有當該檔案是個子目錄或者該檔案已經被設定過為可執行
例如:為同組用戶增加對文件a.txt的讀寫權限:eg: chmod g+rw a.txt
二, 用數字設定法
數字設定法則更為簡單:chmod [mode] 文件名 或者chmod UPO file 分別表示User、Group、及Other的權限
關鍵是mode的取值,其實很簡單,我們將rwx看成二進制數,如果有則有1表示,沒有則有0表示,
那麼rwx r-x r-- 則可以表示成為: 111 101 100 再將其每三位轉換成為一個十進制數,就是754.
例如,我們想讓a.txt這個文件的權限為:
自己 同組用戶 其他用戶
可讀 是 是 是
可寫 是 是
可執行
那麼,我們先根據上表得到權限串為:rw-rw-r--,那麼轉換成二進制數就是110 110 100,
再每三位轉換成為一個十進制數,就得到664,
因此我們執行命令: chmod 664 a.txt
例如:
-rw------- (600) -- 只有屬主有讀寫權限。
-rw-r--r-- (644) -- 只有屬主有讀寫權限;而屬組用戶和其他用戶只有讀權限。
-rwx------ (700) -- 只有屬主有讀、寫、執行權限。
-rwxrwxrwx (777) -- 所有用戶都有讀、寫、執行權限
-rwxrwx--- (770) -- 只有屬主和屬組用戶有讀、寫、執行權限
例子剖析:
chmod 修改文件和文件夾讀寫執行屬性
這是Linux系統管理員最常用到的命令之一,它用於改變文件或目錄的訪問權限
1,把hh.c文件修改為可寫可讀可執行
chmod 777 hh.c
要修改某目錄下所有的文件屬性為可寫可讀可執行
chmod 777 *.*
把文件夾名稱與後綴名用*來代替就可以了。
同理若是要修改所有htm文件的屬性
eg: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就是擁有全權限。根據需要可以自由組合用戶和組的權限
二, chown
指令名稱 : chown
使用權限 : root
使用方式 : chown [-cfhvR] [--help] [--version] user[:group] file…
chown 修改文件的用戶權限 修改文件和文件夾的用戶和用戶組屬性
[-cfvR]诠釋:----
-c : 若該檔案權限確實已經更改,才顯示其更改動作
-f : 若該檔案權限無法被更改也不要顯示錯誤訊息
-v : 顯示權限變更的詳細資料
-R : 對目前目錄下的所有檔案與子目錄進行相同的權限變更(即以遞回的方式逐個變更)
--help : 顯示輔助說明
--version : 顯示版本
user : 新的檔案擁有者的使用者的 ID
group : 新的檔案擁有者的使用者群體(group)
實例剖析:
1,要修改文件hh.c的所有者,修改為HEHE這個用戶所有
chown HEHE hh.c
這樣就把hh.c的用戶訪問權限應用到HEHE作為所有者
2,將目錄 /tmp/sco 這個目錄的所有者和組分別改為HEHE和組net
chown -R HEHE:net /tmp/sco
eg:chown -R oracle:oinstall /database/ ----------------------------------------------------
Linux/Unix 是多人多工作業系統,所有的檔案皆有擁有者。利用 chown 可以將檔案的擁有者加以改變。
一般來說,這個指令只有是由系統管理者(root)所使用,一般使用者沒有權限可以改變別人的檔案擁有者,
也沒有權限可以將自己的檔案擁有者改設為別人。只有系統管理者(root)才有這樣的權限