千家信息网

umask使用详解

发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,umask使用方法A 什么是umask? 当我们登录系统之后创建一个文件总是有一个默认权限的,那么这个权限是怎么来的呢?这就是umask干的事情。umask设置了用户创建文件的默认 权限,它与chmo
千家信息网最后更新 2026年10月31日umask使用详解umask使用方法  A 什么是umask?   当我们登录系统之后创建一个文件总是有一个默认权限的,那么这个权限是怎么来的呢?这就是umask干的事情。umask设置了用户创建文件的默认 权限,它与chmod的效果刚好相反,umask设置的是权限"补码",而chmod设置的是文件权限码。一般在/etc/profile、$ [HOME]/.bash_profile或$[HOME]/.profile中设置umask值。   你的系统管理员必须要为你设置一个合理的 umask值,以确保你创建的文件具有所希望的缺省权限,防止其他非同组用户对你的文件具有写权限。在已经登录之后,可以按照个人的偏好使用umask命 令来改变文件创建的缺省权限。相应的改变直到退出该shell或使用另外的umask命令之前一直有效。一般来说,umask命令是在/etc /profile文件中设置的,每个用户在登录时都会引用这个文件,所以如果希望改变所有用户的umask,可以在该文件中加入相应的条目。如果希望永久 性地设置自己的umask值,那么就把它放在自己$HOME目录下的.profile或.bash_profile文件中。   B 如何计算umask值   umask 命令允许你设定文件创建时的缺省模式,对应每一类用户(文件属主、同组用户、其他用户)存在一个相应的umask值中的数字。对于文件来说,这一数字的最 大值分别是6。系统不允许你在创建一个文本文件时就赋予它执行权限,必须在创建后用chmod命令增加这一权限。目录则允许设置执行权限,这样针对目录来 说,umask中各个数字最大可以到7。   该命令的一般形式为:   umask nnn   其中nnn为umask置000-777。   让我们来看一些例子。   计算出你的umask值:   可以有几种计算umask值的方法,通过设置umask值,可以为新创建的文件和目录设置缺省权限。下表列出了与权限位相对应的umask值。   在计算umask值时,可以针对各类用户分别在这张表中按照所需要的文件/目录创建缺省权限查找对应的umask值。   例如,umask值002 所对应的文件和目录创建缺省权限分别为6 6 4和7 7 5。   还有另外一种计算umask值的方法。我们只要记住umask是从权限中"拿走"相应的位即可。   umask值与权限   umask 文件 目录   0 6 7   1 6 6   2 4 5   3 4 4   4 2 3   5 2 2   6 0 1   7 0 0   例如,对于umask值0 0 2,相应的文件和目录缺省创建权限是什么呢?   第一步,我们首先写下具有全部权限的模式,即777 (所有用户都具有读、写和执行权限)。   第二步,在下面一行按照umask值写下相应的位,在本例中是0 0 2。   第三步,在接下来的一行中记下上面两行中没有匹配的位。这就是目录的缺省创建权限。   稍加练习就能够记住这种方法。   第四步,对于文件来说,在创建时不能具有执行权限,只要拿掉相应的执行权限比特即可。   这就是上面的例子, 其中u m a s k值为0 0 2:   1) 文件的最大权限 rwx rwx rwx (777)   2) umask值为0 0 2 --- --- -w-   3) 目录权限 rwx rwx r-x (775) 这就是目录创建缺省权限   4) 文件权限 rw- rw- r-- (664) 这就是文件创建缺省权限   下面是另外一个例子,假设这次u m a s k值为0 2 2:   1) 文件的最大权限 rwx rwx rwx (777)   2 ) u m a s k值为0 2 2 --- -w- -w-   3) 目录权限 rwx r-x r-x (755) 这就是目录创建缺省权限   4) 文件权限 rw- r-- r-- (644) 这就是文件创建缺省权限   C 常用的umask值   下表列出了一些umask值及它们所对应的目录和文件权限。   常用的umask值及对应的文件和目录权限   umask 值 目录 文件   0 22 7 5 5 6 4 4   0 27 7 5 0 6 4 0   0 02 7 7 5 6 6 4   0 06 7 7 1 6 6 0   0 07 7 7 0 6 6 0   D umask命令   如果想知道当前的umask 值,可以使用umask命令:   $umask   如果想要改变umask值,只要使用umask命令设置一个新的值即可:   $ umask 002   确认一下系统是否已经接受了新的u m a s k值:   $umask   002   $touch testfile   $ls -l testfile   rw- rw- r--   在使用umask命令之前一定要弄清楚到底希望具有什么样的文件/目录创建缺省权限。否则可能会得到一些非常奇怪的结果;例如,如果将umask值设置为6 0 0,那么所创建的文件/目   录的缺省权限就是0 6 6!
权限 文件 目录 命令 用户 就是 方法 系统 最大 例子 数字 登录 一行 常用 模式 中设 有效 接下来 一般来说 个人 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网高科技 深圳市人人互联网科技有限公司 云之行互联网科技 金诺互联网科技 互联网未来科技 奇酷互联网科技公司 互联网科技美容 互联网科技视频素材 太原新华互联网科技学校怎么样 互联网金融科技公司干啥的 允成互联网科技有限公司融资 工业互联网等科技实现智能化赋能 元气玛特互联网科技公司是外包吗 每天都有哪些好的互联网科技 萌小萌互联网科技河南有限公司 互联网公司属于科技吗 银川新华互联网科技学校是国营吗 科技互联网专业工作会议发言稿 互联网科技创新方面的资料 高科技和互联网的现代国家 喔噻互联网科技有限公司 互联网是不是新科技 致骋互联网科技 掌上梦互联网科技 互联网科技公司介绍 互联网金融和金融科技 联恩商钥互联网科技有限公司 新华互联网科技校企合作 长沙茂晟互联网科技有限公司 互联网科技新闻
0