这节课咱们重点来学习权限治理命令,说到权限大家可能第一工夫能想到的就是读、写、执行 rwx
三种权限,在正式解说权限命令之前,先简略的介绍一下 rwx
权限对于文件和目录的不同含意。
权限字符 | 权限 | 对文件的权限意义 | 对目录的权限意义 |
---|---|---|---|
r | 读权限 | 能够查看文件内容 | 能够列出目中的内容 |
w | 写权限 | 能够批改文件内容 | 能够在目录中创立和删除文件 |
x | 执行权限 | 能够执行文件(如命令、脚本) | 能够进入目录 |
1、chmod
命令解释
- 命令名称:
chmod
- 命令英文全称:
change the permissions mode of a file
- 命令所在门路:
/bin/chmod
- 执行权限:所有用户
- 命令性能:批改文件或目录的权限
- 语法:
chmod [ugoa] [+-=] [rwx] [文件或目录]
参数阐明
[ugo] : u 示意该文件的拥有者,g 示意与该文件的拥有者属于同一个所属组(group),o 示意其余以外的人,a 示意这三者皆是。
[+-=] : + 示意减少权限、- 示意勾销权限、= 示意笼罩之前的权限。
[rwx] : r 示意可读取,w 示意可写入,x 示意可执行
举例
$ chmod u+wx file1
#将file1
的所有者增加可写和可执行权限
$ chmod o-r file1
#将file1
给其他人去掉可读权限
$ chmod g=rwx
#将所属组的权限设置为可读、写、执行权限,不论之前是的权限是什么
比方咱们目录上面有 file1
文件,目前所有者权限是 rw
, 当初给所有者减少 x
权限,执行 $ chmod u+x file1
即可:
尽管这种办法很不便,然而咱们在理论过程中,并不太用这种形式,而是通过数字的办法来设置权限,语法如下:
$ chmod [mode=421] [文件或目录]
#其中4
代表r
读权限,2
代表w
写权限,1
代表x
执行权限
咱们晓得一个文件的权限是由 rwx
来示意,比方 rwxr-xr--
,在前的文章咱们有提到,把这个权限每三个分为一组,别离代表所有者权限、所属组权限以及其他人权限。
拿 rwxr-xr--
举例,每三个分为一组,那么能够分为:所有者权限是 rwx
,所属组权限是 r-x
,其他人权限是 r--
。如果用数组来代替,所有者权限rwx:4+2+1=7
,顺次类推,所属组权限是 5,其他人权限是 4。因而用数字来示意权限的命令就是:chmod 754 file
比方我目录下有个 file2
文件,目前权限是rw-r--r--
(644),当初要改成 rwxr-xr-x
(755), 执行命令$ chmod 755 file2
即可:
其余参数阐明
-c
: 若该档案权限的确曾经更改,才显示其更改动作-f
: 若该档案权限无奈被更改也不要显示谬误讯息-v
: 显示权限变更的详细资料-R
: 对目前目录下的所有档案与子目录进行雷同的权限变更(即以递回的形式一一变更)--help
: 显示辅助阐明--version
: 显示版本
比方我要对当前目录下所有的文件及目录批改为
777
权限,执行$ chmod -R 777 *
2、chown
命令解释
- 命令名称:
chown
- 命令英文全称:
change file ownership
- 命令所在门路:
/bin/chown
- 执行权限:所有用户
- 命令性能:批改文件或目录的所有者
- 语法:
chown [用户] [文件或目录]
举例
比方我 test
目录上面有个 file1
文件,目前所有者是 root
, 我想改成我装置零碎的时候定义的用户chuan
,执行命令:
$chown chuan file1
3、chgrp
命令解释
- 命令名称:
chgrp
- 命令英文全称:
change file group ownership
- 命令所在门路:
/bin/chgrp
- 执行权限:所有用户
- 命令性能:批改文件或目录的所属组
- 语法:
chgrp [用户组] [文件或目录]
应用办法和 chown
一样,这里就不多做阐明了。
4、umask
命令解释
- 命令名称:
umask
- 命令所在门路:
/bin/umask
- 执行权限:所有用户
- 命令性能:在建设文件时预设缺省的权限掩码
- 语法:
umask [-S]
参数阐明
-S
以文字的形式来示意权限掩码
举例
能够应用命令 umask
来查看 umask 值:
$ umask
能够看到 umask 值为 0022,其中第一个 0 与非凡权限无关,能够临时不必理睬,后三位 002 则与一般权限 (rwx) 无关,即权限掩码值,其中 002 中:
- 第一个 0 与用户 (user) 权限无关,示意从用户权限减 0,也就是权限不变,所以文件的所有者的权限是默认权限(rwx)
- 第二个 2 与组权限(group)无关,因为 w =2,所以须要从其余用户默认权限(rw)减去 2,也就是去掉写(w)权限
所属组的权限(r-x)
- 最初一位 2 则与零碎中其余用户(others)的权限无关,也是一样的去掉写(w)权限。
因而最初咱们查看它的权限应该是:rwxr-xr-x
其实这样看起来不太直观,咱们能够应用:
$ umask -S
用户权限治理命令次要就是以上几个命令了,下一节课咱们来持续学习 Linux 的罕用其余命令。