背景
在linux上部署一些服务(比如nginx,hhvm,php等)的时候经常遇到一些进程日志里爆权限不够,不能访问。这些问题实质是对linux文件权限理解不清楚造成。
ls -al 查看文件的权限
> ls -al test.md
> -rw-r--r-- 1 lijun31 staff 3944 7 21 16:46 test.md
-rw-r--r--
第1个字符代表文件类型:-=普通 d=目录 l=link
第2-4个字符代表ower权限:rwx分别为可读、可写、可执行
第5-7个字符代表同group权限:rwx分别为可读、可写、可执行
第8-10个字符代表除开以上两种情况的所有其它用户或组权限:rwx分别为可读、可写、可执行
lijun31 staff
lijun31 代表文件所属ower
staff 代表文件所属group
修改文件权限chmod
文字设定法:
chmod [who] [+ | - | =] [mode] 文件名
eg: chmod u+x test.md
权限范围:
u :目录或者文件的当前的用户
g :目录或者文件的当前的群组
o :除了目录或者文件的当前用户或群组之外的用户或者群组
a :所有的用户及群组
数字设定法:
eg: chmod 777 test.md
rwx:4+2+1=7
rw-:4+2=6
r-x:4+1=7
权限代号:
r :读权限,用数字4表示
w :写权限,用数字2表示
x :执行权限,用数字1表示
- :删除权限,用数字0表示
s :特殊权限