进程掩码 mask umask
问题: 当用户创建一个新文件后,如果不使用chmod修改权限,则这个文件的权限是什么? 当用户创建一个新目录后,如果不使用chmod修改权限,则这个文件的权限是什么?
进程掩码的作用: 1)新建文件、新建目录的权限由系统默认权限和默认权限掩码共同确定。 2)Linux系统中目录的最大权限是777,文件的最大权限是666。 3)默认权限掩码告诉系统当创建一个文件或目录时不应该赋予哪些权限。
设置文件或目录的生成掩码的命令是umask,命令格式是: umask [u1u2u3] u1:代表不允许属主的权限,u2:代表不允许组用户的权限,u3代表不允许其他用户的权限。它们的取值为0-7。
文件权限管理: 进程umask 进程 新建文件、目录的默认权限会受到umask的影响,umask表示要减掉的权限 •默认文件的权限为666-022=644 •默认目录的权限为777-022=755
[root@gj ~]# umask //查看当前用户的umask权限 0022
示例:修改shell umask值(临时) [root@gj~]# umask 000 [root@gj ~]# mkdir dir900 [root@gj ~]# touch file900 [root@gj ~]# ll -d dir900 file900 drwxrwxrwx. 2 root root 4096 3月 11 19:44 dir900 -rw-rw-rw-. 1 root root 0 3月 11 19:44 file900 注:-d 将目录象文件一样显示,而不是显示其下的文件
示例:修改shell umask值(永久) [root@gj ~]# vi /etc/bashrc 把022 改成默认需求的掩码。 注明:两个文件需改完成后,都执行source . [root@gj ~]# source /etc/bashrc [root@gj ~]# vim /etc/profile [root@gj ~]# source /etc/profile 备注:修改普通用户的掩码权限