chmod与umask区分命令

chmod与umask区分命令
 
chmod命令用于改变文件的目录的访问权限,他是一条非常重的系统命令。用户可以用其控制文件或目录的访问权限。 
 
umask是创建文件或创建一个文件目录的一个默认权限。当使用不带参数的umask命令是,喜用会输出当前umask的值。 
[root@localhost root]# umask 
0022 
通常文件权限只会用到后3位,即002。 
 
umask 与 chmod 命令设定刚好相反,umask用的是“补码”,而chmod设置的是文件的权限码。对于文件而言,系统不允许创建之初就对其赋予可执行权限,因此文件权限的最高限定是6,目录为7。将最高可选值减去umask中的值即是默认文件创建权限。因此当umask为022时,默认创建文件的权限为644,而默认创建目录的权限为755。 
 
umask只是一条命令,终端退出后则会失效,下次则需要重新运行。 
试过将/etc/profile,~/.bash_profile,/root/.bash_profile文件中的umask 022改为002,重启终端都未生效,或许终端打开执行的并不是这些文件的环境。 
最后找到/etc/bashrc,找到umask 022这一行将其更改为umask 002后则顺利生效。
posted @ 2017-11-27 11:25  huohuohiahia  阅读(1401)  评论(0编辑  收藏  举报