首页 > 运维 > linux运维 > 正文

如何在Linux中设置文件的默认权限?

冰川箭仙
发布: 2025-10-05 23:11:02
原创
258人浏览过
答案:Linux中通过umask设置文件默认权限,umask值以八进制表示,从基础权限666(文件)或777(目录)中屏蔽对应权限位;例如umask 022时,新建文件为644,目录为755;可通过命令umask 027临时设置,或写入~/.bashrc、/etc/profile等配置文件实现永久生效;对于共享目录等复杂场景,可使用setfacl -d设置默认ACL,实现更精细的权限控制,需文件系统支持如ext4、xfs;合理配置umask与ACL有助于提升系统安全与协作效率。

如何在linux中设置文件的默认权限?

在Linux中设置文件的默认权限主要通过 umask 实现。umask定义了创建文件或目录时被自动“屏蔽”掉的权限位,从而决定新文件的默认权限。

理解 umask 的作用

umask 值是一个八进制数字,表示权限的补码。它从基础权限中减去对应位,得到实际创建文件时的权限:

  • 新建文件的基础权限通常是 666(即 -rw-rw-rw-)
  • 新建目录的基础权限通常是 777(即 drwxrwxrwx)
  • umask 会从这些基础权限中去掉对应的权限位
例如:umask 为 022 时,文件权限为 644(即 -rw-r--r--),目录为 755(即 drwxr-xr-x)

临时设置 umask

可以在当前 shell 会话中临时修改 umask:

  • umask 027 —— 新建文件权限为 640,目录为 750
  • umask 002 —— 组用户可写,常用于共享目录

这个设置只对当前终端有效,关闭后失效。

如知AI笔记
如知AI笔记

如知笔记——支持markdown的在线笔记,支持ai智能写作、AI搜索,支持DeepseekR1满血大模型

如知AI笔记27
查看详情 如知AI笔记

永久设置默认权限

要让 umask 设置长期生效,需写入用户或系统的 shell 配置文件

  • 编辑用户级配置:~/.bashrc~/.profile,添加一行:umask 022
  • 系统级设置:修改 /etc/bash.bashrc/etc/profile,影响所有用户
  • 某些系统支持 /etc/login.defs 中的 UMASK 配置,适用于通过 login 创建的会话

特殊场景:使用 ACL 设置更精细的默认权限

对于需要更复杂控制的目录(如团队共享目录),可以使用访问控制列表(ACL)设置默认权限:

  • setfacl -d -m g:developers:rwx /shared/project —— 设置新文件自动继承组权限
  • getfacl /shared/project 可查看默认 ACL 设置
注意:该方式仅对支持 ACL 的文件系统(如 ext4、xfs)有效

基本上就这些。合理设置 umask 能提升系统安全性,避免敏感文件被意外读取。结合 ACL 可实现更灵活的协作环境权限管理。

以上就是如何在Linux中设置文件的默认权限?的详细内容,更多请关注php中文网其它相关文章!

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号