改变权限属性命令chmod
chmod(change mode)-change-file access permissions
chmod是用来改变文件或目录权限的命令,但只有文件的属主和超级用户root才有这种权限。通过chmod来改变文件或目录的权限有两种方法:一种是通过权限字母和操作符表达式的方法来设置权限;另一种是使用数字来设置权限。
权限更改有二种方法:1.数字表示法(常用这种) 2.字符表示法
数字式权限表示法:
chmod [数字组合] 文件名
r 4
w 2
x 1
- 0
字符式权限表示法:
chmod [用户类型] [+|-|=] [权限字符] 文件名
chmod |
用户类型 | 操作字符 | 权限字符 |
文件或目录 |
u(user) | +(加入) | r | ||
g(group) | ||||
o(others) | -(减去) | w | ||
a(all) | =(设置) | x |
用户或用户组定义:
u 代表属主用户
g 代表属组
o 代表其它用户
a 代表属主、属组和其它用户,也就是上面三个用户(或组)的所有
权限定义字母:
r 代表读权限
w 代表写权限
x 代表执行权限
权限增减字符:
+ 增加某个权限
- 取消某个权限
= 取消其他所有权限赋予给定的权限
命令参数:
-c : 若该文件权限确实已经更改,才显示其更改动作
-f : 若该文件权限无法被更改也不要显示错误讯息
-v : 显示权限变更的详细资料
-R : 对目前目录下的所有文件与子目录进行相同的权限变更(即以递回的方式逐个变更)
--help : 显示辅助说明
--version : 显示版本
数字权限使用示例:
如:
1
2
|
[root@w zdw] # ls -l 2.txt
-rw-r--r--. 1 root root 37 Apr 27 14:30 2.txt |
属主: root rw-=4+2+0=6
用户组:root r-x=4+0+0=4
其它: r--=4+0+0=4
得出2.txt文件的权限为 644
更改2.txt权限为-r-xrwxr-x
1
2
3
|
[root@w zdw] # chmod 575 2.txt
[root@w zdw] # ls -l 2.txt
-r-xrwxr-x. 1 root root 37 Apr 27 14:30 2.txt |
更改zdw文件夹及文件夹里文件的权限
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
[root@w zdw] # ll zdw
total 0 -rw-r--r--. 1 root root 0 Apr 28 09:56 e -rw-r--r--. 1 root root 0 Apr 28 09:56 i -rw-r--r--. 1 root root 0 Apr 28 09:56 q -rw-r--r--. 1 root root 0 Apr 28 09:56 r -rw-r--r--. 1 root root 0 Apr 28 09:56 t -rw-r--r--. 1 root root 0 Apr 28 09:56 u -rw-r--r--. 1 root root 0 Apr 28 09:56 w -rw-r--r--. 1 root root 0 Apr 28 09:56 y [root@w zdw] # ll zdw -ld
drwxr-xr-x. 2 root root 4096 Apr 28 09:56 zdw [root@w zdw] # chmod -R 755 zdw #使用-R赋权给文件夹及文件夹里的文件
[root@w zdw] # ll zdw
total 0 -rwxr-xr-x. 1 root root 0 Apr 28 09:56 e -rwxr-xr-x. 1 root root 0 Apr 28 09:56 i -rwxr-xr-x. 1 root root 0 Apr 28 09:56 q -rwxr-xr-x. 1 root root 0 Apr 28 09:56 r -rwxr-xr-x. 1 root root 0 Apr 28 09:56 t -rwxr-xr-x. 1 root root 0 Apr 28 09:56 u -rwxr-xr-x. 1 root root 0 Apr 28 09:56 w -rwxr-xr-x. 1 root root 0 Apr 28 09:56 y |
字符权限使用示例:
给用户添加x的权限
1
2
3
4
5
|
[root@w zdw] # ls -l 1.txt
-rw-r--r--. 1 root bin 151 Apr 27 15:46 1.txt [root@w zdw] # chmod u+x 1.txt #u表示对前三位处理+上x的权限
[root@w zdw] # ls -l 1.txt
-rwxr--r--. 1 root bin 151 Apr 27 15:46 1.txt #已加上x的权限
|
给用户组赋权
1
2
3
|
[root@w zdw] # chmod g=rx 1.txt #给用户组rx的权限
[root@w zdw] # ls -l 1.txt
-rwxr-xr--. 1 root bin 151 Apr 27 15:46 1.txt |
同时赋予权限:
1
2
3
4
5
6
7
8
9
10
11
12
|
[root@w zdw] # chmod u=wx,g=rwx,o=w 1.txt #用,号分隔,可同时赋权
[root@w zdw] # ls -l 1.txt
--wxrwx-w-. 1 root bin 151 Apr 27 15:46 1.txt [root@w zdw] # chmod ugo-w 1.txt #用-可同时减去w权限
[root@w zdw] # ls -l 1.txt
---xr-x---. 1 root bin 151 Apr 27 15:46 1.txt [root@w zdw] # chmod a-x 1.txt #ugo相当于a,减去x权限
[root@w zdw] # ls -l 1.txt
----r-----. 1 root bin 151 Apr 27 15:46 1.txt [root@w zdw] # chmod +x 1.txt #什么都不填直接写+号,也相当于所有
[root@w zdw] # ls -l 1.txt
---xr-x--x. 1 root bin 151 Apr 27 15:46 1.txt
|