目录权限777,目录下创建文件权限是644

问题描述

目录赋权777:chmod -R 777 指定目录

再赋权后的目录内创建文件,权限却是644

问题原因

如果目录的权限设置为777(即rwxrwxrwx),那么在该目录下创建的文件的默认权限取决于系统的umask设置。umask定义了在创建新文件时系统应当屏蔽的权限位。一般情况下,umask的默认值是022。

假设umask的默认值是022,那么在一个777权限的目录中创建的文件的默认权限将是666(即rw-rw-rw-),也就是说会屏蔽掉可执行权限。这是因为umask会排除掉相应的权限位,而777目录权限中包含了所有权限位。

umask是0022表示在创建新文件时,系统会屏蔽掉组和其他用户的写权限。这意味着新创建的文件将具有以下默认权限:

  • 对于普通文件,默认权限为644(rw-r--r--),即所有者具有读写权限,但组和其他用户只有读权限。
  • 对于目录,默认权限为755(rwxr-xr-x),即所有者具有读、写和执行权限,但组和其他用户只有读和执行权限。

这样的umask设置通常用于确保新创建的文件对于其他用户来说是相对安全的,因为默认情况下不会给予组和其他用户写入权限。

要查看系统的umask设置,可以在命令行中输入以下命令:
umask

相关推荐
vortex59 分钟前
Linux 默认 SUID 可执行文件详解
linux·运维
2023自学中30 分钟前
Linux虚拟机 CMakeLists.txt:x86 与 ARM 双架构编译脚本
linux·c语言·c++·嵌入式
土星云SaturnCloud1 小时前
从云端到边缘:基于土星云SE110S的智能视频分析轻量化部署方案(上)
服务器·人工智能·ai·边缘计算
阿狸猿1 小时前
论负载均衡技术在 Web 系统中的应用
运维·前端·负载均衡
Adorable老犀牛1 小时前
靠Claude Code写了登录助手AuthDash:一键自动登录,每天节省10分钟——这才是AI编程的降本增效
运维·ai编程·claudecode
爱就是恒久忍耐1 小时前
老Ubuntu安装podman 5.x版本
linux·ubuntu·podman
梦想的颜色1 小时前
MySQL 查询性能核武器
运维·服务器·数据结构·数据库·mysql
geshifei2 小时前
Sched_ext框架总览
linux·ebpf
CingSyuan2 小时前
服务器RAID阵列与硬盘状态运维指南:RAID级别、降级、踢盘、掉盘、热备盘、重建风险、硬盘指示灯与点灯流程解析
运维·服务器
Dlrb12112 小时前
Linux系统编程-进程及相关指令与函数
linux·进程·并发·进程状态·调度·进程控制指令·进程函数