**
每日一个Linux命令之chmod命令
**
- chmod命令简介
- 利用chmod命令变更文件权限
1. chmod命令简介
查询chmod命令的man page,如下所示:
根据chmod命令的man page可知,chmod命令用于修改文件的mode,那么文件的mode是什么呢?之前在介绍ls命令时,通过ls -l命令可以输出文件的详细信息:
其中,每一行的最左边就表明了该文件的mode,也就是文件的权限信息。
最左边一栏共10个字母,第一个字母表明文件的类型。剩余的9个字母表示文件的权限,每三个为一组,共三组,分别为所属用户(user),所属组(group)和其他(other)对该文件的权限。以miniconda3文件为例,第一个字母d表明这是一个目录文件(directory),剩余的9个字母为rwxrwxr-x,表明所属用户(user),所属组(group)和其他(other)对该文件的权限分别为rwx,rwx,r-x。
权限分为三种:从左至右依次为读(r),写(w),执行(x),对应位置如果为-,则表明不具备x相应的权限。依然以miniconda3文件为例,rwxrwxr-x表明除了所属用户和所属用户组,其他用户对miniconda3文件均没有写(w)的权限。
2. 利用chmod命令变更文件权限
利用+/-增删权限
前文说到9个权限位分为3组,分别表示所属用户(user),所属组(group)和其他(other)对该文件的权限,我们可以使用+/-来增删user(u), group(g)和other(o)对文件的权限,使用语法如下,a表示为所属用户(user),所属组(group)和其他(other)同时增删权限
chmod [ugoa][±][rwx] filename
例1:为test.txt的所属用户(user)增加写(w)权限
chmod u+w test.txt
例2:为test.txt的其他用户(other)删除写(w)和执行(x)权限
chmod o-wx test.txt
例3:为test.txt的所属用户(user)和所属用户组(group)增加读(r)和写(w)权限
chmod ug+rw test.txt
例4:为test.txt的所属用户(user),所属组(group)和其他(other)同时删除执行(x)权限
chmod a-x test.txt
利用权重来设置权限
我们经常可以看到chmod 777 xxx之类的命令,777即为权限权重的组合。读(r),写(w),执行(x)的权重如下表所示:
将上述权重进行组合,即可表示对一个文件的权限。例如,rwx可以表示为7(4+2+1),r-x可以表示为5(4+1),-wx可以表示为3(2+1),rw-可以表示为6(4+2)。
对于test.txt文件,如果我们对所属用户设置权限rwx(7),所属用户组设置权限r-x(5),其他用户设置权限r–(4),则可以使用如下命令:
chmod 754 test.txt
关注 工 仲 好:IT运维大本营,获取60个G的《网工系统大礼包》,了解更多IT课程
原文链接:https://blog.csdn.net/Mr_Sudo/article/details/125175465