chmod 權限模式 125 種
755 和 644 到底放開了什麼、umask 該設成多少,全部由這三位數字算出。
真正常用的模式
125 種裡,真正會去敲的大約只有十種。
400r--------唯讀的金鑰檔案——連擁有者也改不了。600rw-------私鑰和設定檔。只有擁有者能讀寫。640rw-r-----團隊需要讀的設定檔。644rw-r--r--一般檔案的常見值:誰都能讀,只有擁有者能寫。664rw-rw-r--幾個人一起改的檔案。666rw-rw-rw-誰都能改,所以幾乎不用。700rwx------只有自己動的資料夾和腳本。755rwxr-xr-x可執行檔和網站目錄的常見值。775rwxrwxr-x團隊共用的資料夾。777rwxrwxrwx對所有人全開。急起來才用,用完後悔。
全部 125 種
實際會用到的五個值(0·4·5·6·7)的全部組合。只能寫不能讀那類值沒有收。
擁有者 0 — 0xx---
000001004005006007010011014015016017040041044045046047050051054055056057060061064065066067070071074075076077
擁有者 1 — 1xx--x
100101104105106107110111114115116117140141144145146147150151154155156157160161164165166167170171174175176177
擁有者 4 — 4xxr--
400401404405406407410411414415416417440441444445446447450451454455456457460461464465466467470471474475476477
擁有者 5 — 5xxr-x
500501504505506507510511514515516517540541544545546547550551554555556557560561564565566567570571574575576577
擁有者 6 — 6xxrw-
600601604605606607610611614615616617640641644645646647650651654655656657660661664665666667670671674675676677
擁有者 7 — 7xxrwx
700701704705706707710711714715716717740741744745746747750751754755756757760761764765766767770771774775776777
怎麼看這一頁
- 讀 4、寫 2、執行 1,加起來成為一位。7 是 4+2+1,5 是 4+1。
- 三位從左到右是擁有者、群組、其他人。
- umask 是要減掉的值:目錄從 777 減,檔案從 666 減。
- 特殊位(setuid 4000、setgid 2000、黏著位 1000)會在前面多一位——/tmp 就是 1777。
常見問題
Q755 和 644 差在哪裡?
差一個執行位。755 讓任何人都能執行檔案或進入目錄,644 對別人只是可讀。目錄用 755,一般檔案用 644。
Q為什麼不要用 777?
因為凡是能碰到這台機器的人都能改內容。為了繞過權限錯誤而設 777,等於把門直接拆了。
Qumask 022 是什麼意思?
它是要減掉的值。目錄從 777 減成 755,檔案從 666 減成 644。
Q四位的 1777 是什麼?
最前面一位是特殊位。1 是黏著位:/tmp 那樣大家都能寫,但誰也刪不了別人的檔案。
Q目錄上的執行權限是什麼意思?
是「能進去」的權限。只有讀權限時,能列出名字卻打不開裡面的檔案。