Linux 透過擁有者、群組、其他人三層權限模型保護檔案安全。本文詳細說明 ls -l 輸出的權限欄位含義、數字/符號模式修改指令、預設權限 umask 設定,以及進階 ACL 操作。

| 代碼 | 對象 | 說明 |
|---|---|---|
| u | User (擁有者) | 檔案建立者,通常擁有完整權限 |
| g | Group (群組) | 檔案所屬群組成員 |
| o | Others (其他人) | 非擁有者、非群組成員 |
ls -l 權限欄-rwxr-xr-- 1 amrood users 1024 Nov 2 00:10 myfile
drwxr-x--- 1 amrood users 1024 Nov 2 00:10 mydir
- 檔案,d 目錄,l 連結。# 符號模式
chmod u+x,g-w,o-r file # 精確增減
chmod a+rX dir # 目錄加 x,檔案不加
# 數字模式 (r=4,w=2,x=1)
chmod 755 file # rwxr-xr-x
chmod 644 file # rw-r--r--
# 遞迴套用目錄
chmod -R 755 /var/www
umask 022 → 新檔 644、新目錄 755。umask 022 加入 /etc/profile 或 ~/.bashrc。# 給特定使用者權限
setfacl -m u:alice:rwx /project/data
# 給特定群組權限
setfacl -m g:dev:rw /project/data
# 移除 ACL
setfacl -x u:alice /project/data
# 查看 ACL
getfacl /project/data
掌握以上權限體系,即可在多使用者環境下精準控制資料存取安全。