Linux chmod 修改檔案權限

chmodChange Mode 的縮寫,用來修改檔案或目錄的權限。 在上一篇我們了解了權限概念後,這篇直接教你怎麼改。

兩種修改方式

1. 數字法 (最常用)

直接用數字 (4, 2, 1 的加總) 來指定 Owner, Group, Others 的權限。

# 設定為 755 (rwxr-xr-x)
# Owner: rwx (4+2+1=7)
# Group: r-x (4+0+1=5)
# Others: r-x (4+0+1=5)
chmod 755 script.sh

常見設定:

  • chmod 777 file:大家都能改(危險)。
  • chmod 600 file:只有我自己能讀寫 (SSH Key 必備)。
  • chmod 400 file:只有我自己能讀(唯讀模式)。

2. 符號法 (直觀)

使用 u (User), g (Group), o (Others), a (All) 搭配 + (加入), - (移除), = (設定) 來修改。

# 幫 script.sh 加上「可執行」權限 (所有人)
chmod +x script.sh

# 幫 Owner 加上「可寫」權限
chmod u+w file.txt

# 移除 Group 和 Others 的「可寫」權限
chmod go-w file.txt

遞迴修改 (-R)

如果你想一次修改整個資料夾裡面的所有檔案,請加上 -R (Recursive)。

# 將 www 目錄下所有檔案都設為 755
chmod -R 755 /var/www/html

[!CAUTION] 小心使用: 不要在系統根目錄使用 -R,如果把 /bin/usr 的權限改壞了,系統可能會直接掛掉開不了機。