Linux chmod(英文全拼:change mode)命令是控制用户对文件的权限的命令
Linux/Unix 的文件调用权限分为三级 : 文件所有者(Owner)、用户组(Group)、其它用户(Other Users)。
只有文件所有者和超级用户可以修改文件或目录的权限。可以使用绝对模式(八进制数字模式),符号模式指定文件的权限。
使用权限 : 所有使用者
语法
参数说明
mode : 权限设定字串,格式如下 :
其中:
u 表示该文件的拥有者,g 表示与该文件的拥有者属于同一个群体(group)者,o 表示其他以外的人,a 表示这三者皆是。
+ 表示增加权限、- 表示取消权限、= 表示唯一设定权限。
r 表示可读取,w 表示可写入,x 表示可执行,X 表示只有当该文件是个子目录或者该文件已经被设定过为可执行。
其他参数说明:
-c : 若该文件权限确实已经更改,才显示其更改动作
-f : 若该文件权限无法被更改也不要显示错误信息
-v : 显示权限变更的详细资料
-R : 对目前目录下的所有文件与子目录进行相同的权限变更(即以递归的方式逐个变更)
--help : 显示辅助说明
--version : 显示版本
Linux档案的基本权限就有九个,分别是owner/group/others三种身份各有自己的read/write/execute权限
举例:档的权限字符为 -rwxrwxrwx 这九个权限是三个三个一组的!其中,我们可以使用数字来代表各个权限,各权限的分数对照表如下:
r:4 w:2 x:1
每种身份(owner/group/others)各自的三个权限(r/w/x)分数是需要累加的,例如当权限为: [-rwxrwx---] 分数则是:
所以我们设定权限的变更时,该档案的权限数字就是770啦!变更权限的指令chmod的语法是这样的:
选项与参数:
xyz : 就是刚刚提到的数字类型的权限属性,为 rwx 属性数值的相加。
-R : 进行递归(recursive)的持续变更,亦即连同次目录下的所有档案都会变更
举例来说,如果要将.bashrc这个档案所有的权限都设定启用,那么就下达:
那如果要将权限变成 -rwxr-xr-- 呢?那么权限的分数就成为 [4+2+1][4+0+1][4+0+0]=754 啰!所以你需要下达:
改变权限:change mode 更改文件,文件夹的权限
可以使用+、-、=来更改权限
u:user g:group o:other
chmod u+w file
chmod u+r file
chmod u-x file
chmod u=rw file
修改文件的数组,删除数组的功能
chmod g-r
文件权限的rwx必须严格按照顺序来,没有权限使用 - 来代替
但是这种方法使用起来,比较的麻烦
r 4 read
w 2 write
x 1 exec
- 0 没有权限
最大的权限 rwx 4+2+1 = 7
最小的权限 --- 0+0+0 = 0
案例
1、修改权限,属主只写,属组制度,其他人只读
chmod u=w,g=r,o=r yu.txt
chmod 244 yu.txt
2、修改文件权限为 755 然后用字母表示该权限
chmod 755 yu.txt
user:7 group:5 other:5
7=4+2+1 rwx
5=4+1 r-x
5=4+1 r-x
意思是:该文件的创建者、创建者所在组、所有人,都有对该文件读、写和执行的权限。修改为-rwxrw-r--的方法是执行:chmod 764 文件名。
r代表读权限,w代表写权限,x代表执行权限。“-”后面一共分三组,第一组是创建者的权限,第二组是创建者所在组的权限,第三组是所有人的权限。三组的 *** 作权限都是满的,所以所有用户都可以对该文件进行读写和执行 *** 作。
在linux中,修改文件权限的命令是chmod,chom后面可以用3组数字代表权限,r的数字是4,w的数字是2,x的数字是1。如第一组权限“rwx”用数字代表就是4+2+1=7,同理该题修改权限的命令是:chmod 764 文件名。
扩展资料:
注意事项:
1、linux文件查看里,第一个符号表示文档类型,如本题目中,最前面的“-”代表该文档是文件的属性,如果是d则代表该文档是文件夹。
2、修改权限的方法有两种,除了chmod的数字法,还有指定发法。格式是:chmod [指定修改] FileName,例:本题中修改权限,还可写成:chmod g-x,o-wx 文件名。
3、注意中文符号,在Linux中不能直接识别中文符号,如:chmod g-x,o-wx 文件名,中间的逗号不能是中文。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)