为什么或何时文件被守护进程所拥有?

为什么或何时文件被守护进程所拥有?

我正在开发一个在 Apache 服务器上运行的 PHP 应用程序(使用微软XAMPP)。我有一个.public_data文件夹,里面有包含一些用户数据的子文件夹。这些子文件夹及其中的文件由 PHP 脚本动态创建。

.public_data及其子文件夹的所有者是www-data。然而,奇怪的是,子文件夹中的文件不知何故归daemon- 所有,而包含这些文件的所有文件夹均归www-data- 我已经厌倦了徒劳地尝试互联网上的解决方案。

为了使事情更清楚,想象一下这个文件:

.public_data/userA1/.details.dat

拥有者

  • .公共数据 (预先存在的文件夹): www-数据
  • 用户A1 (动态创建): www-数据
  • 详细信息.dat (动态创建):守护进程

我可以使用命令将所有权更改为daemon,也可以通过 GUI 使用命令,但 PHP 脚本无法删除这些文件。 www-datasudo chmodsudo -i nautilus

有两个疑问让我抓狂:

  1. 为什么即使我手动更改文件所有权后 PHP 脚本仍无法删除文件?
  2. 我的动机是构建一个可以在运行时执行所有命令的系统,因此手动更改文件的所有权不是一个解决方案。我需要文件继承所有权。为什么这些文件归守护进程所有?

为了进一步澄清,我寻求以下答案:为什么/何时文件会被守护进程所拥有,我该如何防止这种情况发生?

相关内容