FTP上传后如何自动chown / chgrp文件?

我有一个新的VPS设置与Debian + LEMP堆栈。 想知道如何自动chown / chgrp通过FTP上传到/ srv / www / siteroot的新文件到www-data:www-data?

我在这个假设下可以用一个适当的umask?

umask设置会影响新创build的文件和目录上的权限位。 它不影响所有权。

您可以将上传文件的用户添加到www-data组。 然后,FTP服务器中的022的umask将确保这些文件可以被networking服务器读取,但是不可写入。

如果你也使用PHP,你可以设置suphp以便上传的php脚本将作为他们所属的用户执行。 像这样,你的脚本也可以写入你的文件(如果它们是以www数据的forms执行的话)。

umask设置文件的权限,而不是所有权。

你可以使用chgrp www-data <dir>; chmod +s <dir> chgrp www-data <dir>; chmod +s <dir>以确保在该目录中创build的所有文件都属于组www-data。 我不相信有一种方法可以改变所有者,但有适当的组权限,这不应该是必要的。

如果您通过FTP上传,则应在FTP服务configuration文件中有选项来始终在上载的文件上设置特定的用户和/或组。