linux常用命令权限a linux 权限指令( 五 )


–help : 显示辅助说明
–version : 显示版本
文件名:以空格分开的要改变权限的文件列表,支持通配符 。在一个命令行中可给出多个权限方式 , 其间用逗号隔开 。例如:chmod g+r,o+r example使同组和其他用户对文件example 有读权限 。
例1:
$ chmod a+x sort
即设定文件sort的属性为:
文件属主(u) 增加执行权限
与文件属主同组用户(g) 增加执行权限
其他用户(o) 增加执行权限
例2:
$ chmod ug+w,o-x text
即设定文件text的属性为:
文件属主(u) 增加写权限
与文件属主同组用户(g) 增加写权限
其他用户(o) 删除执行权限
例3:
【linux常用命令权限a linux 权限指令】$ chmod u+s a.out
假设执行chmod后a.out的权限为(可以用ls – l a.out命令来看):
–rws--x--x 1 inin users 7192 Nov 4 14:22 a.out
并且这个执行文件要用到一个文本文件shiyan1.c , 其文件存取权限为“–rw——-”,即该文件只有其属主具有读写权限 。
当其他用户执行a.out这个程序时,他的身份因这个程序暂时变成inin(由于chmod命令中使用了s选项) , 所以他就能够读取shiyan1.c这个文件(虽然这个文件被设定为其他人不具备任何权限) , 这就是s的功能 。
因此,在整个系统中特别是root本身 , 最好不要过多的设置这种类型的文件(除非必要)这样可以保障系统的安全 , 避免因为某些程序的bug而使系统遭到入侵 。
例4:
$ chmod a–x mm.txt
$ chmod –x mm.txt
$ chmod ugo–x mm.txt
以上这三个命令都是将文件mm.txt的执行权限删除,它设定的对象为所有使用者 。
2. 数字设定法
我们必须首先了解用数字表示的属性的含义:0表示没有权限,1表示可执行权限,2表示可写权限,4表示可读权限,然后将其相加 。所以数字属性的格式应为3个从0到7的八进制数 , 其顺序是(u)(g)(o) 。
例如,如果想让某个文件的属主有“读/写”二种权限,需要把4(可读)+2(可写)=6(读/写) 。
数字设定法的一般形式为:chmod [mode] 文件名?
例1:
$ chmod 644 mm.txt
$ ls –l
即设定文件mm.txt的属性为:
-rw-r--r-- 1 inin users 1155 Nov 5 11:22 mm.txt
文件属主(u)inin 拥有读、写权限
与文件属主同组人用户(g) 拥有读权限
其他人(o) 拥有读权限
例2:
$ chmod 750 wch.txt
$ ls –l
-rwxr-x--- 1 inin users 44137 Nov 12 9:22 wchtxt
即设定wchtxt这个文件的属性为:
文件主本人(u)inin 可读/可写/可执行权
与文件主同组人(g) 可读/可执行权
其他人(o) 没有任何权限
chgrp命令
功能:改变文件或目录所属的组 。
语法:chgrp [选项] group filename?
参数:
-c或–changes 效果类似”-v”参数,但仅回报更改的部分 。
-f或–quiet或–silent不显示错误信息 。
-h或–no-dereference只对符号连接的文件作修改,而不更动其他任何相关文件 。
-R或–recursive递归处理 , 将指定目录下的所有文件及子目录一并处理 。
-v或–verbose显示指令执行过程 。
–help在线帮助 。
–reference=lt;参考文件或目录gt;把指定文件或目录的所属群组全部设成和参考文件或目录的所属群组相同 。
–version显示版本信息 。
该命令改变指定指定文件所属的用户组 。其中group可以是用户组ID,也可以是/etc/group文件中用户组的组名 。文件名是以空格分开的要改变属组的文件列表 , 支持通配符 。如果用户不是该文件的属主或超级用户,则不能改变该文件的组 。

推荐阅读