Bak*_*yor 37 permissions umask
由于一些明显的原因,我需要umask为一个特定文件夹设置值。怎么能这样呢?
先谢谢了!
更新 1
我需要对特定文件夹使用 umask 的原因如下。我有一个 Web 应用程序,当它创建一些文件时,默认权限是 700。但我至少需要该文件的 755 权限。我想我现在可以更清楚地解释这个问题了。
小智 40
你可以用 setfacl
setfacl -d -m group:name:rwx /path/to/your/dir
Run Code Online (Sandbox Code Playgroud)
name群名在哪里
要查找您或特定用户属于哪些组,请参阅在 unix/linux 中,您如何通过命令行找出给定用户所在的组?
Lek*_*eyn 12
您不能为每个目录设置 umask,它是一个进程级值。如果您需要阻止其他人读取目录中的文件,请撤销相应的权限位。
例如,如果您有一个/home/user/directory包含某些文件和目录的目录,这些文件和目录可以从进程中获得 777 等权限,请将其权限位设置为/home/user/directory700 之类的内容。这将使其他用户(超级用户 root 除外)无法下降在/home/user/directory。
我很偏执并将权限设置/home/user为 750,所以只有我可以在我的主目录中读取、写入和下降。这导致/home/user/Public其他人无法访问像这样的文件夹,但我可以忍受。
每次更新您的问题:仍然,您无法在文件系统中控制它(除了使用不同的文件系统类型,如 FAT 被强烈拒绝),您需要在您的 webapp 中执行此操作。如果您的 web 应用程序是用 PHP 编码的,您可以使用以下umask函数动态更改 umask :
<?php
umask(0022);
// other code
?>
Run Code Online (Sandbox Code Playgroud)
你可以把它放在一个配置文件中,比如包含数据库连接密码的文件(在像 Wordpress 这样的应用程序中思考)。
请记住,它是一个过程值,一些网络服务器允许您在其配置文件中设置它,否则您可以修改启动脚本以设置所需的 umask。请记住,权限喜欢755和644对于web应用相当危险的,如果代码是敏感的,每个人都可以阅读。
要更改文件夹的权限,请使用 chmod。umask 用于文件。
将 umask 设置为您需要的值
umask xxx
Run Code Online (Sandbox Code Playgroud)
完成后改回来
umask 022
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
154239 次 |
| 最近记录: |