背景:
周末编译个glibc 遇到permission问题 以前都是无脑777设置下去 今天有闲 简单研究一下
1. 初学时比较莽的时候,爱用777,将访问权限开满
1-1. 777详解:
命令:chmod permissions filename
例子:chmod 777 glibc
说明:三个7 第一个7是user权限,第二个7是group权限,第三个是others权限
具体权限如下表:
Number | Permission Type | Symbol |
---|---|---|
0 | No Permission | --- |
1 | Execute | --x |
2 | Write | -w- |
3 | Execute + Write | -wx |
4 | Read | r-- |
5 | Read + Execute | r-x |
6 | Read +Write | rw- |
7 | Read + Write +Execute | rwx |
1-2. 符号模式 与 权限的加减
who | 用户类型 | 说明 |
---|---|---|
u | user | 文件所有者 |
g | group | 文件所有者所在组 |
o | others | 所有其他用户 |
a | all | 所用用户, 相当于 ugo |
Operator | Description |
---|---|
+ | Adds a permission to a file or directory |
- | Removes the permission |
= | Sets the permission and overrides the permissions set earlier. |
常用例子1: 对所有用户,增加文件的运行权限
sudo chmod a+x a.out
常用例子2: 对文件所有者 和 文件所有者所在的用户组,增加文件夹及文件夹内所有子文件夹和文件的读写权限
sudo chmod -R ug+wr foldername
常用例子3: 对文件所有者 和 文件所有者所在的用户组,增加文件夹及文件夹内所有子文件夹和文件的读写+运行权限
sudo chmod -R 775 foldername