用户组与文件权限(2)

三个权限对应的数字为r:4,w:2,x:1,三类用户的权限分别就是这三个数字的和,比如说上面的那个例子“ -rw-rw-r-- ”化为数字即是:664,要给三个用户都加上执行权限的话,就用chmod 775 hello.c”

(2)符号法:

chmod        u/g/o/a       +/-/=          r/w/x        filename            

以上u”表示user,“g”表示group,o”表示others,a”表示all

“+”表示增加权限,-”表示去除权限,=”表示设置权限为

“rwx”当然就是文件的三个权限,可以只写一个,也可以写多个

依旧是上面的那个例子,给hello.c所有用户加上执行权限,那么命令就是chmod a+x hello.c”

ps:以上命令可以加上-R”参数来进行递归变更

2.4 文件的默认权限:umask

以上已经说明了关于文件权限的基本知识,那么当我们新建一个文件的时候,权限是怎样的呢?这就涉及到文件的默认权限:umask。在终端下输入umask,会得到一串数字,像在我的机器上是0002”,后三个数字即是文件的默认权限,不过要注意的是,这是文件默认不具有的权限。亦即002”代表others不具有w权限。还需要注意的是对于文件和目录这里仍是不同的。文件默认不具有x权限,即最大权限为-rw-rw-rw-”,而目录访问需要x权限,因此默认最大权限为-rwxrwxrwx”。所以在我的机器上umask为002”,分别创建一个文件和一个目录后,结果如下:

drwxrwxr-x.            2         jerry     jerry          4096          8月 31 11:30               new

-rw-rw-r--.               1         jerry     jerry             6             8月 31 11:29              new.txt

若要设置umask,直接在后面加上设置的数字即可,比如umask 022” 

ps:umask加上-S(大写)参数可以直接显示文件权限,不过不区分文件与目录,如我的机子上就显示u=rwx,g=rwx,o=rx”,仍需留意文件默认没有x权限。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/23436.html