目录权限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

相关推荐
戴为沐17 小时前
Linux内存扩容指南
linux
zylyehuo1 天前
Linux 彻底且安全地删除文件
linux
用户805533698032 天前
主线 U-Boot 上 RK3506:和闭源 rkbin 拔河的三个隐性契约
linux·嵌入式
用户034095297912 天前
linux fcitx 5 雾凇拼音 设置在中文输入法下仍然输入英文标点
linux
乘云数字DATABUFF2 天前
5分钟部署开源APM Databuff:OpenTelemetry全链路追踪入门实战
运维·后端
Web3探索者3 天前
可视化服务器管理和传统命令行区别是什么?新手教程:Linux 运维到底该用图形界面还是 SSH 命令行?
linux·ssh
zylyehuo4 天前
Linux系统中网线与USB网络共享冲突
linux
荣--4 天前
一键部署不是为了省时间 —— 它是把"买来的 PaaS"变成"自己的平台"的拐点
运维·zabbix·工程化·一键部署·平台化·边界设计
江华森4 天前
动手实战学 Docker — 从零到集群编排完全指南
运维
Avan_菜菜4 天前
FRP 内网穿透完整实战:从 HTTP 映射到 HTTPS 自签代理
运维·nginx·https