1 简介
linux中的 umask 函数主要用于:在创建新文件或目录时 屏蔽掉新文件或目录不应有的访问允许权限。
文件的访问允许权限共有9种,分别是:rwxrwxrwx
它们分别代表:用户读 用户写 用户执行 组读 组写 组执行 其它读 其它写 其它执行
2 功能及参数介绍
umask(显示、设置文件的缺省权限即默认权限)
语法:umask [-S] [权限掩码]
补充说明:umask可用来设定[权限掩码]。[权限掩码]是由3个八进制的数字所组成,将现有的存取权限减掉权限掩码后,即可产生建立文件时预设的权限。
-S 以rwx形式显示新建文件或目录缺省权限
例:umask查看默认权限(0022)
0-特殊权限位
022-用户权限位,权限掩码值 实际权限值:777—022=755(目录权限)
Linux权限规则:缺省创建的文件不能授予可执行x权限(文件默认权限644) 这规则屏蔽了很多的攻击和病毒,任何木马病毒不可执行就没价值
umask -S(很多unix系统中没有umask -S选项) 可用umask查看默认的文件权限掩码值,也可用它改变但不建议改变 改变系统缺省的创建文件的权限:umask 权限掩码值 例:umask 027(目录默认权限变为750,文件为640)
文件:用八进制基数666,即无x位(可执行位)rw- rw- rw-.执行位需由用户自行加入。
例一:设要生成的文件以rw- r-- r--这样的权限字出现,即真实权限用八进制表示为644,则被666基数减得022,022即掩码。使用umask 022。
注:033效果与022一样,假设使用033掩码进??行设置,则真实权限应为633即rw- rx rx ,但前提规定文件不生成x位,所以文件的权限最终将以rw-r--r --出现。
目录:用八进制基数777
例二:设要生成的目录权限以rwxr-xr-x这样的权限字出现,即真实权限用八进制表示为755,则被基数为777的权限字相减后,得掩码022。则使用umask 022进行设置。
3 总结
掌握二个要点
1.文件基数为666,目录为777,即文件无设x位,目录可设x位。
2.chmod是设哪个位,哪么哪个位就有权限,而umask是设哪个位,则哪个位上就没权限,即chmod指令是“给于”使用或者是将要改变的许可权限,而umask 则是“取消”使用许可权限。
****************************************************************************************
原文地址: http://blog.csdn.net/jesseyoung/article/details/42525341
博客主页: http://blog.csdn.net/jesseyoung
****************************************************************************************
linux中的 umask 函数主要用于:在创建新文件或目录时 屏蔽掉新文件或目录不应有的访问允许权限。
文件的访问允许权限共有9种,分别是:rwxrwxrwx
它们分别代表:用户读 用户写 用户执行 组读 组写 组执行 其它读 其它写 其它执行
2 功能及参数介绍
umask(显示、设置文件的缺省权限即默认权限)
语法:umask [-S] [权限掩码]
补充说明:umask可用来设定[权限掩码]。[权限掩码]是由3个八进制的数字所组成,将现有的存取权限减掉权限掩码后,即可产生建立文件时预设的权限。
-S 以rwx形式显示新建文件或目录缺省权限
例:umask查看默认权限(0022)
0-特殊权限位
022-用户权限位,权限掩码值 实际权限值:777—022=755(目录权限)
Linux权限规则:缺省创建的文件不能授予可执行x权限(文件默认权限644) 这规则屏蔽了很多的攻击和病毒,任何木马病毒不可执行就没价值
umask -S(很多unix系统中没有umask -S选项) 可用umask查看默认的文件权限掩码值,也可用它改变但不建议改变 改变系统缺省的创建文件的权限:umask 权限掩码值 例:umask 027(目录默认权限变为750,文件为640)
文件:用八进制基数666,即无x位(可执行位)rw- rw- rw-.执行位需由用户自行加入。
例一:设要生成的文件以rw- r-- r--这样的权限字出现,即真实权限用八进制表示为644,则被666基数减得022,022即掩码。使用umask 022。
注:033效果与022一样,假设使用033掩码进??行设置,则真实权限应为633即rw- rx rx ,但前提规定文件不生成x位,所以文件的权限最终将以rw-r--r --出现。
目录:用八进制基数777
例二:设要生成的目录权限以rwxr-xr-x这样的权限字出现,即真实权限用八进制表示为755,则被基数为777的权限字相减后,得掩码022。则使用umask 022进行设置。
3 总结
掌握二个要点
1.文件基数为666,目录为777,即文件无设x位,目录可设x位。
2.chmod是设哪个位,哪么哪个位就有权限,而umask是设哪个位,则哪个位上就没权限,即chmod指令是“给于”使用或者是将要改变的许可权限,而umask 则是“取消”使用许可权限。
****************************************************************************************
原文地址: http://blog.csdn.net/jesseyoung/article/details/42525341
博客主页: http://blog.csdn.net/jesseyoung
****************************************************************************************