linux中为了方便更改属主属组的权限,可以用数字去代替rwx。r=4,w=2,x=1,-=0.
-rwx r-x r--用数字表示就是764.
chmod的语法: chmod [-R] xxx 文件名 (xxx就是数字)
或者 : chmod u+w g-w o+x
: chmod u=rwx go=rw
例子:chmod 750 111.txt
-R选项的作用是级联更改。
在linux系统中,默认的目录权限是755,文件的默认权限是644
umask命令
在linux系统中,目录和文件的权限是由谁规定的呢?这就涉及到umask
umask语法:umask xxx (xxx是数字)
查看umask值:
[root@one ~]# umask 0022 [root@one ~]#
可以看到umask的预设是0022。
规则:
用户创建普通文件的话,预设条件只有可读可写,最大为666(-rw-rw-rw-)
用户创建的是目录的话,预设条件所有的权限都开放,即是777(drwxrwxrwx)
而umask数值的代表含义为,以上的两条规则的默认值减去umask值。umask是可以自定义的。
不能单纯的以数字去进行减法。
例子:777-022应该是rwx rwx rwx 减 --- -w- -w-,权限就是rwx r-x r-x
为什么不能单纯地用数字减法计算权限呢?看一下的这个例子:
umask=033
文件的默认权限是666,666-033=633也就是rw- -wx -wx,这其实是错误的,
实际上是rw- rwx- rw- 减去 --- -wx -wx 等于rw- r-- r--,也就是644.
umask可以在/etc/bashrc里面修改,预设情况下,root的umask值是022,而一般用户的umask值为002,因为可写权限非常的重要。
原文地址:http://1024079574.blog.51cto.com/10921986/1745778