Linux 文件权限机制:默认权限与umask
我们在 Linux 系统中创建新文件或目录时有没有想过它们的权限是如何确定的今天聊聊文件权限的默认值机制目录文件的起点权限666 和 777umask权限的过滤器umask 为 002 时的计算umask 可以修改吗1. 临时修改 umask2. umask 的生效范围3. 极端情况实战创建一个共享文件夹步骤一在系统目录下创建文件夹步骤二开放写权限权限计算的编程思维总结文件的起点权限666 和 777Linux 为不同类型的文件设定了不同的起始权限文件类型起始权限二进制权限含义普通文件666110 110 110所有者、所属组、其他人都能读目录文件777111 111 111所有人都能读、写、执行普通文件默认没有执行权限(x)因为可执行文件需要明确标记为可执行目录需要执行权限才能进入所以默认给满umask权限的过滤器仅仅有起始权限还不够最终权限还需要经过 umask 的过滤最终权限 起始权限 (~umask)这里的是按位与运算~是按位取反。听起来有点绕我们来看具体例子umask 为 002 时的计算假设 umask 002// 普通文件666 (~002)// 666 110 110 110// ~002 111 111 101 (取反)// 结果 110 110 100 664// 目录文件777 (~002)// 777 111 111 111// ~002 111 111 101// 结果 111 111 101 775所以在 umask 002 的默认情况下普通文件最终权限是664 rw-rw-r-- 目录文件最终权限是775 rwxrwxr-x umask 可以修改吗当然可以但有几点需要注意1. 临时修改 umask# 修改 umask 为 000新建文件就是 666 或 777umask000# 修改 umask 为 077新建文件更私有umask0772. umask 的生效范围umask 的更改是临时的仅对当前会话生效。下一次登录服务器就会恢复默认值 002这是因为 umask 通常写在/etc/profile或用户家目录的.bashrc中开机会重新加载。3. 极端情况umask 000新建的文件就是 666 或 777完全不限制权限umask 777新建的文件都是 000没有任何权限基本不可用实战创建一个共享文件夹如果多人协作开发常常需要创建一个所有人都能访问的共享目录步骤一在系统目录下创建文件夹# 需要 root 权限在 / 目录下创建sudomkdir/my_shared步骤二开放写权限# 给所有人开放写权限sudochmodow /my_shared此时所有用户都能在/my_shared目录下创建和删除文件权限计算的编程思维如果你用 C 语言实现一个简单的权限计算器#includestdio.hintmain(){intdefault_perm666;// 普通文件起始权限intumask002;intfinal_permdefault_perm(~umask);printf(起始权限: %o\n,default_perm);printf(umask: %o\n,umask);printf(最终权限: %o\n,final_perm);return0;}输出起始权限: 666 umask: 002 最终权限: 664总结普通文件起始权限是 666目录是 777最终权限 起始权限 (~umask)umask 默认是 002umask 可以临时修改但重启后会恢复创建共享目录时需要用sudo提权并设置ow免责声明本文仅用于学习交流 Linux 权限机制。不同 Linux 发行版的默认 umask 可能略有不同生产环境中请谨慎修改权限封面图来源于网络,如有侵权,请联系删除

相关新闻

SSD老化柜选型指南:从接口、散热到供电的完整解析

SSD老化柜选型指南:从接口、散热到供电的完整解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/6 4:01:10 阅读更多 →
力扣刷题--104--二叉树的最大深度

力扣刷题--104--二叉树的最大深度

题目:给定一个二叉树 root ,返回其最大深度。二叉树的最大深度是指从根节点到最远叶子节点的最长路径上的节点数。示例1:输入:root [3,9,20,null,null,15,7] 输出:3示例2:输入:root [1,null,2…

2026/9/6 4:01:10 阅读更多 →
STM32智能温控风扇:从DHT11采集到PWM调速的完整嵌入式实践

STM32智能温控风扇:从DHT11采集到PWM调速的完整嵌入式实践

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/6 4:01:10 阅读更多 →

最新新闻

2026年8月咸阳家用雨棚上门测量怎么选

2026年8月咸阳家用雨棚上门测量怎么选

咸阳家庭用户选择雨棚工厂时,真正需要确认的不是宣传中的“低价”或“快速”,而是能否完成现场测量、结构设计、材料确认、规范施工和后续维护。对于露台、入户门、庭院、车位及小型商用场景,上门测量应成为报价前的必要环节,否则…

2026/9/6 4:43:35 阅读更多 →
JoiPlay 模拟器:在手机上畅玩你所热爱的独立游戏

JoiPlay 模拟器:在手机上畅玩你所热爱的独立游戏

1. 什么是 JoiPlay 模拟器 JoiPlay 是一款运行在 Android 平台上的多功能模拟器,它最大的特点是能够在手机上运行原本为 PC 设计的游戏,尤其是基于 RPG Maker 系列引擎制作的游戏,以及使用 RenPy 引擎开发的视觉小说。对于喜欢玩独立游戏、R…

2026/9/6 4:43:35 阅读更多 →
Hy4 770B MoE模型发布与WorkBuddy AI工作台实操指南

Hy4 770B MoE模型发布与WorkBuddy AI工作台实操指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/6 4:43:35 阅读更多 →
8核16G云服务器真实能力边界与从零部署实战

8核16G云服务器真实能力边界与从零部署实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/6 4:43:35 阅读更多 →
Davinci Developer的CS接口

Davinci Developer的CS接口

新建CS接口 起个名字 Edit 加上入参

2026/9/6 4:43:35 阅读更多 →
【Bonjour】MATLAB实现心理测量者“希拉比系统”:摄像头+麦克风犯罪指数分析【含matlab代码】

【Bonjour】MATLAB实现心理测量者“希拉比系统”:摄像头+麦克风犯罪指数分析【含matlab代码】

MATLAB实现心理测量者“希拉比系统”:摄像头麦克风犯罪指数分析 下载链接 希拉比系统 引言:当MATLAB遇上西比拉 在动画《心理测量者》(PSYCHO-PASS)中,西比拉系统(Sibyl System)是一个能够实…

2026/9/6 4:42:35 阅读更多 →

日新闻

超人会飞不算本事:系统稳定依赖清晰规则与边界设计

超人会飞不算本事:系统稳定依赖清晰规则与边界设计

开头先不绕弯子。“#斯坦李吐槽dc 所以超人是无缘无故会飞的嘛哈哈哈哈哈哈哈锤哥真是技术人才啊!#雷神 #复联”这类调侃式短标题,第一波冲击力在于它把两个宇宙的角色塞进同一个吐槽箱里,但细想一下就能发现,它真正碰到的根本不是…

2026/9/6 0:00:08 阅读更多 →
超人VS蜘蛛侠:拆解超级IP的影响力与传播方法论

超人VS蜘蛛侠:拆解超级IP的影响力与传播方法论

把“蜘蛛侠 vs 超人”放在 CSDN 上聊,可能很多人第一反应是走错片场了。但如果把这两个角色看成“两个持续运营了 80 多年的文化产品”,你会发现,这场比较本质上是两个不同 IP 策略的长期结果对比:超人赢在定义了整个超级英雄题材…

2026/9/6 0:00:08 阅读更多 →
基于CNN的调制信号识别:MATLAB实现时频图分类实战

基于CNN的调制信号识别:MATLAB实现时频图分类实战

简介:本资源是一套面向通信工程与信号处理方向学习者、研究者的深度学习实践方案,聚焦调制信号自动检测与识别这一典型无线通信任务,解决传统方法依赖人工特征、低信噪比下性能下降等痛点。压缩包共12个文件(10.73MB)&…

2026/9/6 0:00:08 阅读更多 →

周新闻

超人会飞不算本事:系统稳定依赖清晰规则与边界设计

超人会飞不算本事:系统稳定依赖清晰规则与边界设计

开头先不绕弯子。“#斯坦李吐槽dc 所以超人是无缘无故会飞的嘛哈哈哈哈哈哈哈锤哥真是技术人才啊!#雷神 #复联”这类调侃式短标题,第一波冲击力在于它把两个宇宙的角色塞进同一个吐槽箱里,但细想一下就能发现,它真正碰到的根本不是…

2026/9/6 0:00:08 阅读更多 →
超人VS蜘蛛侠:拆解超级IP的影响力与传播方法论

超人VS蜘蛛侠:拆解超级IP的影响力与传播方法论

把“蜘蛛侠 vs 超人”放在 CSDN 上聊,可能很多人第一反应是走错片场了。但如果把这两个角色看成“两个持续运营了 80 多年的文化产品”,你会发现,这场比较本质上是两个不同 IP 策略的长期结果对比:超人赢在定义了整个超级英雄题材…

2026/9/6 0:00:08 阅读更多 →
基于CNN的调制信号识别:MATLAB实现时频图分类实战

基于CNN的调制信号识别:MATLAB实现时频图分类实战

简介:本资源是一套面向通信工程与信号处理方向学习者、研究者的深度学习实践方案,聚焦调制信号自动检测与识别这一典型无线通信任务,解决传统方法依赖人工特征、低信噪比下性能下降等痛点。压缩包共12个文件(10.73MB)&…

2026/9/6 0:00:08 阅读更多 →

月新闻

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能分类:[AI/大模型]细分主题:AI 增强型 CI/CD 流水线自动化与 GitOps 实践:Agent 工作流、工具调用与任务拆解:从原型到生产的验收清单很多团队在尝试用大…

2026/9/5 5:05:50 阅读更多 →
容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场分类:[工程技术]细分主题:Kubernetes 生产环境运维与排障实战:可复制的项目复盘模板与决策记录大部分团队的事故复盘报告,最后都变成了躺在 Confluence 或钉…

2026/9/5 19:29:20 阅读更多 →
容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步

容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步

容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步分类:[工程技术]细分主题:Docker 容器化技术与镜像安全管理:核心链路的逐步实现与关键代码取舍面对一个积累了五六年历史包袱的单体架构应用(包含 Web 接口、后台…

2026/9/4 9:37:01 阅读更多 →