希望你一切都好。我在 fedora 上安装了 Xammp,并将 opp/lampp/htdoc 的所有者更改为 root。为什么我这样做是因为每当有人通过共享创建新文件夹时,他们没有动态创建文件夹或文件或写入图像的权限。然后我运行命令
chmod -R 777 /opt/lampp/htdocs
但是当系统重新启动时,我再次需要运行此命令。因此,避免一次又一次运行此命令,我更改了“opt/lampp/htdocs”上的所有者并运行
chmod -R 777 /opt/lampp/htdocs
现在,每当服务器重新启动时,分配的权限不需要一次又一次地设置。这样就解决了。
我有一个问题,旧目录可以用来写东西。但是,如果任何网络用户在htdocs
下创建新目录,则需要更改该新目录的权限。
之前创建过,可以使用这一个目录运行脚本来创建文件
drwxrwxrwx 2 root root 4096 2011-06-15 14:09 aaa
新创建的,不能用于运行脚本来创建图像或写入任何内容
drwxr-xr-x 2 root root 4096 2011-06-17 15:17 aaaa
drwxr-xr-x
对于 htdocs
中每个新创建的文件夹来说,这对我来说真的很烦人:(
只是让您知道我的 htdocs
用户和权限是:
drwxrwxrwx 101 root root 4096 2011-06-17 15:17 htdocs
为什么会这样呢?有人可以帮我解决这个问题吗?我焦急地等待快速回复。
最佳答案
首先,您应该调查您真正需要什么权限 - 将所有内容 chmod 到 777 是一个安全风险,因为它将允许任何用户在您的 Web 根目录内写入。
但是,为了解决用户创建新文件夹时默认权限的实际问题,您需要调整确定此类内容的默认“umask”。
这个问题有一些关于为 Apache 用户更改它的信息(如果“网络用户”是通过 httpd 进程创建新文件和目录的用户):
Setting the umask of the Apache user
如果您需要针对其他用户或进程进行调整,解决方案将类似。
祝你好运!
编辑
由于您使用的是 Fedora,请尝试以下操作:(来 self 上面链接的问题)
[root ~]$ echo "umask 002" >> /etc/sysconfig/httpd [root ~]$ service httpd restart
第一个命令将该行添加到/etc/sysconfig/httpd(这是一个永久配置文件)中,第二个命令将使其处于事件状态。
关于linux - 新建文件夹权限问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6385896/