在 Linux 下設定資料夾的權限及所有權

前言

在某些特定的情況下,你很有可能會想要更改 Linux 下某個資料夾的權限及所有權。這篇文章會說說 chownchmod 的使用方式。

chown

chown 是變更檔案或是資料夾的擁有者。簡易的使用方法大概如下:

/path/to/directory 這個目錄下所有東西的擁有者改為 user,群組為 group。因為有關資料夾下的所有項目,因此使用 -R 進行遞迴。

sudo chown -R user:group /path/to/directory

如果你只是簡單的想要更改某個檔案的擁有者,那也可以這樣就好。

sudo chown user /path/to/file.txt

chmod

chmod 功能是用於變更檔案或目錄的存取權限。但在開始講 chmod 之前,先簡單概述一下 Octal Mode 這個東西。

每權限都代表著一個數字,用相加的方式代表不同權限疊加,如下:

  • 讀取 (r) = 4
  • 寫入 (w) = 2
  • 執行 (x) = 1
  • 沒有權限 = 0
  • 讀取 (r) + 執行 (x) = 4 + 1 = 5
  • 讀取 (r) + 寫入 (w) = 4 + 2 = 6
  • 讀取 (r) + 寫入 (w) + 執行 (x) = 4 + 2 + 1 = 7

而這又用三位數組成,百位數代表擁有者、十位數代表群組、個位數代表其他人。因此, 755 則代表:

  • 擁有者:7 (讀取、寫入、執行)
  • 群組:5 (讀取、執行)
  • 其他人:5 (讀取、執行)

所以,一個完整的命令如下:

遞迴的將 /path/to/directory 這個資料夾下的所有內容設為:擁有者可讀、可寫、可執行,其他人可讀、可執行。

chmod -R 755 /path/to/directory