1.什么是权限
在Linux中,用户是是权限的资源集合。那么,权限就代表着某一特定用户对某一个文件(目录)可以执行的操作类型。此操作类型分为:读权限(r),写权限(w)和执行权限(x)。
我们知道在linux中一切皆为文件,但是对于目录文件和非目录文件,相同的权限代表的操作方式却是不同的,如下图所示:
2. 权限组合机制
如下图所示,linux中文件对于不同用户的权限是以rxw三个为一组表示的,分为代表了user,group和other对此文件的权限。“-”表示无此权限。
下图列出了所有的权限组合类型:
同时,在系统中,对于新创建的非目录文件和目录其默认权限分别为:666和777。但是,实际文件生成后得权限是其默认权限减去文件权限反向掩码(umask)。
比如,我新建了一个目录,其默认权限为777,系统设置的umask值为0022,那么此目录实际权限就是755。
3. 权限管理命令
3.1 chmod
格式:chmod [OPTION]... MODE... FILE...
使用示例:
一个文件的权限为--xrwx---,将其user增加rw的权限:
chmod u=rw shell.sh = chmod u+rx shell.sh = chmod 770 shell.sh
取消掉其group的x权限:
chomd g=rw- shell.sh = chmod g-x shell.sh = chmod 750 shell.sh
3.2 chown
改变一个文件的user或group
一般用法:chown USERNAME:GROUPNAME shell.sh