转自:点击打开链接
用ls命令所得到的表示法的格式是类似这样的:-rwxr-xr-x 。下面解析一下格式所表示的意思。这种表示方法一共有十位:
9 8 7 6 5 4 3 2 1 0
- r w x r - x r - x
第9位表示文件类型,可以为p、d、l、s、c、b和-:
p |------> 命名管道文件
d |------> 表示目录文件
l |------> 表示符号连接文件
- |------> 表示普通文件
s |------> 表示socket文件
c |------> 表示字符设备文件
b |------> 表示块设备文件
第8-6位 表示文件所有者的权限,其形式为rwx
第5-3位 表示同组用户的权限,其形式为rwx
第2-0位 表示其他用户的权限,其形式为rwx
linux下用chmod(change file modebit)改变一个文件的权限一般有两种方式:
1、chmod [ugoa][+-=][rwx] filename
其中:u 代表拥有者(user)g 代表组(group)o 代表其它用户(other)a 代表所有用户(all)+-= 代表增加、去除、设置为相应的权限。rwx分别代表读(read)、写(write)、执行(exe)。
比如:chmod a+x filname 表示对所有用户增加对filename的执行权限。
2.setUid,setGid
如果一个命令被设置了SUID,那么这个命令在执行期间,执行这个命令的用户就具有了这个命令的属主的权限;如果一个命令被设置了SGID,那么这个命令在执行期间,执行这个命令的用户就具有了这个命令的属组的权限.
设置SetUid权限: chmod 4xxx filename
取消SetUid权限: chmod xxx filename
设置SetGid权限: chmod 2xxx filename
取消SetGid权限: chmod xxx filename
如果执行“chmod 6xxx filename”命令即可同时为指定文件设置SetUid和SetGid,
执行命令“chmod 0xxx filename”,即可同时取消指定文件的SetUid和SetGid权限。