Linux chmod、chgrp、chown 權限管理筆記
Linux chmod、chgrp、chown 權限管理筆記
感謝您點進本篇文章,我是 LukeTseng,近期接觸到 Linux 系統,時常需要面對黑色終端機,有些時候想做到一些操作,卻也不知道那個指令叫什麼,我也沒有好好奠基 Linux 的基礎指令,所以特此製作本篇文章!希望能解決到你我的痛點!
若本篇文章某處有誤,敬請告知,感謝!
Linux 檔案、目錄權限
Linux 的檔案權限分為三個層級:
- 擁有者(Owner/User, u):檔案的所有者。
- 群組(Group, g):與檔案擁有者同群組的使用者。
- 其他人(Others, o):系統上其他所有使用者。
每個層級可以設定三種權限:
- r(read, 讀取):數字值為 4,可以查看檔案內容或列出目錄內容。
- w(write, 寫入):數字值為 2,可以修改檔案或在目錄中新增 / 刪除檔案。
- x(execute, 執行):數字值為 1,可以執行檔案或進入目錄。
當在輸入 ls -l 時,會列出像以下這些東西:

其中 drwxr-xr-x 就是檔案或目錄的權限,可以分成三個部分來看:
1 | d rwx r-x r-x |
其中第一個欄位是檔案類型,有以下這幾種檔案類型:
-:普通檔案d:directory,目錄。p:pipe 管道檔案。l:link 符號連結。
第 2~4 欄位是擁有者(u:owner)的權限:
r:可讀(read) = 4。w:可寫(write) = 2。x:可執行(execute) = 1。-:沒有權限。
第 5~7 欄位是群組(g:group)權限,內容與上方(owner)敘述相同,第 8~0 欄位是其他人(o:others)權限,內容同上。
這串 rwxr-xr-x 可以表示成 7(rwx)5(r-x)5(r-x),每個數字左到右代表的是 u(owner)、g(group)、o(others)這些人的權限。
chmod 更改檔案、目錄權限
chmod 是取自 change mode 的縮寫,分成兩種模式,一種是數字模式,另一種是符號模式。
數字模式
先來講講數字模式:
數字模式透過三位八進位數字來設定權限,每位數字是權限值的總和:
- 0:無權限(
---) - 1:僅執行(
--x) - 2:僅寫入(
-w-) - 3:寫入+執行(
-wx) - 4:僅讀取(
r--) - 5:讀取+執行(
r-x) - 6:讀取+寫入(
rw-) - 7:完整權限(
rwx)
範例:
1 | chmod 644 file.txt # -rw-r--r-- 擁有者可讀寫,其他人僅可讀 |
符號模式
接下來是符號模式,符號模式使用字母組合來新增、移除或設定權限:
操作對象:
u:擁有者(user)。g:群組(group)。o:其他人(others)。a:所有人(all)。
操作符號:
+:新增權限。-:移除權限。=:設定特定權限(清除其他權限後會重新設定)。
範例:
1 | chmod u+x script.sh # 給擁有者新增執行權限 |
常用參數
-R:遞迴,對目錄及其所有子目錄和檔案套用權限變更。-v:詳細模式,顯示每個檔案的權限變更情況。-c:僅顯示有變更的檔案。-f:安靜模式,不顯示錯誤訊息。
範例:
1 | chmod -R 755 /var/www/html # 遞迴設定整個網站目錄權限 |
chown
chown(change owner)是 Linux 系統中用來變更檔案或目錄「擁有者」和「群組」的指令。
擁有者(owner)以及群組(group)可用 ls -l 查看,於第三欄、第四欄就會顯示誰是擁有者以及群組:

第三欄(左邊紅框)是擁有者,第四欄(右邊紅框)是群組。
chown 主要做以下這三件事情:
- 變更檔案或目錄的擁有者(誰擁有這個檔案)。
- 變更檔案或目錄的群組(哪個群組的成員可以存取這個檔案)。
- 同時變更擁有者與群組。
基本語法:
1 | chown [options] [owner][:[group]] <files or directories> |
owner:可為使用者名稱或使用者 ID。
group:可為群組名稱或群組 ID。
:(冒號):分隔 owner 與 group。
常用參數與 chmod 相同:
-R:遞迴,對目錄及其所有子目錄和檔案套用權限變更。-v:詳細模式,顯示每個檔案的權限變更情況。-c:僅顯示有變更的檔案。-f:安靜模式,不顯示錯誤訊息。
相關範例:
- 只改變擁有者:
sudo chown alice file.txt
file.txt 的擁有者變成 alice,群組不變。
- 只改變群組:
sudo chown :devteam file.txt
file.txt 的群組變成 devteam,擁有者不變。
- 同時改變擁有者和群組:
sudo chown alice:devteam file.txt
file.txt 的擁有者變成 alice,群組變成 devteam。
- 遞迴更改整個目錄及其內容:
sudo chown -R alice:devteam project_folder
project_folder 及其所有子目錄、檔案的擁有者和群組都變更。
使用權限
- 只有 root 或檔案擁有者可以更改檔案的擁有者。
疑難雜症
- 權限不足:一般使用者無法隨意更改檔案擁有者,需加
sudo。 - 目錄遞迴未加
-R:只會改變目錄本身,不會影響裡面的檔案。
chgrp
chgrp 是取自 change group 的縮寫,是 Linux 系統中用來變更檔案或目錄所屬群組的指令。
基本語法:
1 | chgrp [options] <group_name or group_ID> <files or directories> |
群組名稱須已存在於 /etc/group 檔案中。
常用參數與 chmod 相同:
-R:遞迴,對目錄及其所有子目錄和檔案套用權限變更。-v:詳細模式,顯示每個檔案的權限變更情況。-c:僅顯示有變更的檔案。-f:安靜模式,不顯示錯誤訊息。
相關範例:
- 更改單一檔案的群組:
chgrp developers file.txt
讓 file.txt 歸屬於 developers 群組。
- 更改多個檔案的群組:
chgrp users file1.txt file2.txt。
同時更改多個檔案的群組。
- 遞迴更改目錄及其內容的群組:
chgrp -R www-data /var/www/html
讓整個網站目錄及其所有檔案都歸屬於 www-data 群組。
使用權限
- 只有檔案擁有者或
root管理員可以執行chgrp。 - 要是目標群組的成員才可以用,否則會出現權限錯誤。
whoami
whoami 是在 Linux 查看目前有效使用者名稱的指令,只要直接輸入即可,效力等同於 id -un 指令。
總整理
Linux 檔案權限分為三個層級(user、group、others),每層級有三種權限:
r(讀取)= 4w(寫入)= 2x(執行)= 1
使用 ls -l 查看時,如 drwxr-xr-x:
- 第 1 位:檔案類型(
-普通檔、d目錄、l連結、p管道)。 - 第 2-4 位:擁有者(owner)權限。
- 第 5-7 位:群組(group)權限。
- 第 8-10 位:其他人(others)權限。
chmod(變更權限)
數字模式:
1 | chmod 644 file.txt # 擁有者讀寫,其他人唯讀 |
符號模式:
1 | chmod u+x script.sh # 擁有者增加執行權限 |
chown(變更擁有者、群組)
1 | chown alice file.txt # 改變擁有者 |
chgrp(變更群組)
1 | chgrp developers file.txt # 改變單一檔案群組 |
常用參數
三個指令共用這些參數:
-R:遞迴處理目錄及子內容。-v:顯示詳細變更過程。-c:僅顯示有變更的檔案。-f:安靜模式,隱藏錯誤訊息。
注意事項
- 變更擁有者需要
root權限(使用sudo)。 - 目標群組必須存在於
/etc/group。 - 遞迴操作記得加
-R,否則只影響目錄本身。
參考資料
Linux 檔案權限教學:深入理解 chmod 指令與 -rw-r-r- 實用設定方法 - オープンソースの力を活用する方法~Ubuntuの世界へようこそ~
Linux - Chmod 工具管理檔案/目錄權限 - HowHow の WebSite
Linux命令中chmod 777 以及drwxr-xr-x分别代表什么意思-腾讯云开发者社区-腾讯云
Linux檔案權限配置- FineReport帮助文档 - 全面的报表使用教程和学习资料




