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目录上的执行权限是什么意思?
是“能进去”的权限。只有读权限时,能列出名字却打不开里面的文件。