Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學

Linux chmod 命令詳解:數字法與符號法權限修改完全指南

編輯:Linux 系統常見問題解答

權限基礎

Linux 文件權限 9 位,分三組:Owner (u)、Group (g)、Others (o)。每組含 r (讀, 4)、w (寫, 2)、x (執行, 1)。

數字法(八進制)

將三組權限分別換算為一位八進制數:

rwx = 4+2+1 = 7rw- = 4+2+0 = 6r-x = 4+0+1 = 5r-- = 4+0+0 = 4

常見組合:

權限字符八進制說明
-rw-------600僅屬主讀寫
-rw-r--r--644屬主讀寫,組/他讀
-rwx------700僅屬主全權限
-rwxrwxrwx777所有人全權限(危險)
-rwxrwx---770屬主/組全權限

命令示例:

chmod 770 test.log        # 設置權限chmod -R 770 test/       # 遞歸修改目錄樹chmod 754 file            # rwxr-xr--

符號法

語法:chmod [who][op][perm] file

  • who:u(owner)、g(group)、o(others)、a(all)
  • op:+(添加)、-(移除)、=(精確設置)
  • perm:r/w/x

示例:

chmod u=rwx,go=rx test.log   # -rwxr-xr-xchmod a+w test.log          # -rwxrwxrwx (所有人加寫)chmod a-x test.log          # -rw-rw-rw- (所有人去執行)

進階用法

  • chmod +X:僅對目錄或已有執行位的文件添加 x,避免普通文件變可執行。
  • chmod --reference=ref_file target_file:複製參考文件權限。
  • 配合 find 批量操作:
    find . -type f -exec chmod 644 {} +find . -type d -exec chmod 755 {} +

特殊權限位

  • Setuid (4xxx):執行時以文件屬主權限運行(如 passwd)。
  • Setgid (2xxx):執行時以屬組權限運行;目錄上設置則新建文件繼承目錄組。
  • Sticky (1xxx):目錄上防止非擁有者刪除文件(如 /tmp)。

示例:chmod 4755 /usr/bin/passwd、chmod 1777 /tmp。

Copyright © Windows教程網 All Rights Reserved