您的位置:首页 > 运维架构 > Linux

linux 权限掩码函数 umask 介绍

2015-02-06 13:43 567 查看
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

****************************************************************************************
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: