当进入Linux系统后新创建的文件或者文件夹总是会有一个默认的权限,那么这个权限是如何设置的呢? umask就是设置文件与目录的默认权限
1. 查看umask
- 直接查看,
[root@centos6 ~]# umask 0022
- 以模式方式显示
[root@centos6 app]# umask -S u=rwx,g=rx,o=rx
- 输出可被调用,重定向
[root@centos6 app]# umask -p umask 0022
0022表示的权限是rwxr-xr-x,第一位的0是特殊权限,这里先不做考虑。
2. 文件与目录权限
- 文件:新文件对于所有用户来说具有执行权限是很可怕的事情。所以对于文件来说默认最大权限就是666 rw-rw-rw
- 目录:对于目录来说,x权限意味着是否能进入到目录中。如果一个新建的目录无x权限就进入不了这个目录。那目录就没有存在的意义。所以目录的最大权限是777 drwxrwxrwx
3. 默认权限的计算
- 文件:
最大权限减去umask码等于默认权限,结果为奇数,则奇数位+1 - 结果为偶数
666-022=644,转换为权限 rw- r- - r - - -
如果mask=135
666-025=641,奇数+1为642,转换为权限rw- -r- - - w- - 目录:
最大权限减去umask码等于默认权限 -
777-022=755 转换为权限 rwxr-xr-x
4. 查看权限
创建文件与目录,查看其权限。
[root@centos7data]#umask 当前umask值为0025 0025 [root@centos7data]#touch f1 [root@centos7data]#mkdir f2 [root@centos7data]#ll total 0 -rw-r---w- 1 root root 0 Nov 3 11:01 f1 新建的文件就是666-025=641,奇数加1,则为:642, -rw-r--w- drwxr-x-w- 2 root root 6 Nov 3 11:01 f2 新建目录就是777-025=752, drwx-rx-w-
5. umask的设置方法
- 直接设置,只是临时生效,用户注销后恢复
[root@centos6 app]# umask 0002
- 对指定用户永久生效
[root@centos6 app]# nano ~/.bashrc umask 0002
- 对所有用户永久生效
[root@centos6 app]# nano /etc/.bashrc umask 0002
6. 总结
- 一般root的umask为022
- 一般普通用户的umask为002
- umask越小权限越大