rw- r– r–
rw- rw- r–
该命令有两种用法。一种是包含字母和操作符表达式的文字设定法;另一种是包含数字的数字设定法。
chmod [who] [+ | – | =] [mode] 文件名?
命令中各选项的含义为:
操作对象who可是下述字母中的任一个或者它们的组合:
操作符号可以是:
可以创建简单的列表,通过双引号括起列举的元素,或者是通过使用tcl列表命令,必须使用空格划定元素界限,而不用逗号。excludedgroups 排除在外的组列表,空格或逗号分隔。该选项的值为列表,不同的项目之间使用空格或逗号 隔开。
例1:
$ chmod a+x sort
即设定文件sort的属性为:
文件属主(u) 增加执行权限
与文件属主同组用户(g) 增加执行权限
其他用户(o) 增加执行权限
例2:
$ chmod ug+w,o-x text
即设定文件text的属性为:
文件属主(u) 增加写权限
与文件属主同组用户(g) 增加写权限
其他用户(o) 删除执行权限
例3:
$ 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
7.设置文件和文件夹的读/写/执行权限和特殊权限(suid/sgid/sbit)。为了在当前目录中查找s u i d置位,文件属主具有读、写、执行权限,并且文件所属组的用。2、让当前目录中文件属主具有读、写权限,并且文件所属组的用户和其他用户具有读权限的文件。
当其他用户执行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的执行权限删除,它设定的对象为所有使用者。
intelhex文件记录中的数字都是16进制格式,两个16进制数字代表一个字节。intel hex文件记录中的数字都是16进制格式,两个16进制数字代表一个字节。16进制有0——f十六 个数字,它为表示十到十五的数字采用了a、b、c、d、e、f六个数字,它们和十进制的对应关系是:a对应于10,b对应于11,c对应于12,d对应于 13,e对应于14,f对应于15.而且,16进制数和二进制数间有一个简单的对应关系,那就是。
例如,如果想让某个文件的属主有“读/写”二种权限,需要把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