繁体   English   中英

目录中的Linux权限

[英]Linux permission in directories

我在服务器上安装了Apache,一切正常。 问题是,每次我创建一个没有777权限的文件夹/文件时,我都需要对我创建的每个文件夹/文件使用chmod来分配777权限。 如何创建将默认为新文件/文件夹的权限规则?

简短的答案是,即使不能,你也不能, 也不应 在文件系统上以0777作为模式的任何文件都是一个坏主意。

稍长一点的答案是Apache进程使用open(2)的第三个参数或使用fopen(3)来控制其创建新文件的模式。 在后一种情况下,模式默认为0666 传入的任何模式都会被进程的umask值进一步修改。 如果进程具有健全的umask(例如022 ),则使用fopen打开文件的结果将是模式设置为0666 & ~022 = 0644 我猜如果该进程将使用open创建具有0777的文件并且该进程umask设置为0 ,那么它创建的文件将以0777作为结果模式。

虽然我同意777不是一个好主意,但答案是umask:

umask 000

我至少建议以下内容,以便并非世界上的每个人(可以访问该计算机)都可以在此处进行写操作:

umask 002

哦,这些不是目录继承的。 改用ACL获得继承。 ACL工具因操作系统而异。 尝试“ setfacl”或“ chacl”。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM