umask的含义及设置

转自:https://www.cnblogs.com/ttop/p/4085414.html

1.umask掩码

umask是chmod配套的,总共为4位(gid/uid, 属主组权其它用户的权限),不过通常用到的是后3个,例如你用chmod 755 file(此时这文件的权限是属主读(4)+写(2)+执行(1),同组的和其它用户有读写权限)

默认情况下的umask值是022(可以用umask命令查看),

  • 此时你建立的文件默认权限是644(6-0,6-2,6-2),
  • 建立的目录的默认权限是755(7-0,7-2,7-2)

1.1 规则:

  1. 若使用者建立为『文件』则预设『没有可执行 ( x ) 项目』,亦即只有 rw 这两个项目,也就是最大为 666 分。即 –rw-rw-rw-
  2. 若使用者建立为『目录』,则由于 x 与是否可以进入此目录有关,因此预设为所有权限均开放,亦即为 777 分。 即drwxrwxrwx

2.修改默认umask

在/etc/profile或者~/.profile或~/.bash_profile添加一行命令:

umask ???

 

也可以在.bashrc中添加,.profile中登录时自动执行.bashrc文件。

3.创建文件默认可执行?

例子:

[root@vbird test]# umask 003
[root@vbird test]# touch test3
[root@vbird test]# mkdir test4
[root@vbird test]# ll
-rw-rw-r– 1 root root 0 Oct 22 00:03 test3
drwxrwxr– 2 root root 4096 Oct 22 00:03 test4/

 

针对文件test3,如果使用十进制来算666-003=663,那么针对其他用户是3,即-wx?但实际上并不是这样,而是-r-,所以此时不能通过十进制的方法来算。

正确算法:

(-rw-rw-rw-) – (——–wx)=-rw-rw-r–

 

使用rwx来计算。

那么设置新创建的文件为可执行,只能通过chmod命令了,默认情况下是不可以的。

chmod +x file.sh

 

posted @   lypbendlf  阅读(616)  评论(0编辑  收藏  举报
编辑推荐:
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
历史上的今天:
2018-11-20 基因表达谱学习[转载]
点击右上角即可分享
微信分享提示