for i in `cat /etc/trueuserdomains | awk '{print $2}'`;
do
chown $i.$i /home/$i/public_html -R;
chown $i.nobody /home/$i/public_html;
done
通过分解上面的代码来描述
cat /etc/trueuserdomains | awk '{print $2}'
这将打印出由文件 /etc/trueuserdomains 的第二列中的每个单词组成的用户列表(该文件中可能只有一行,其中第二个单词包含文件应该是的用户拥有)
如果您想查看该列表的确切内容,请从命令行运行以下命令。
cat /etc/trueuserdomains | awk '{print $2}'
然后for i部分执行两个 chown 命令,将 $i 替换为从 cat /etc/trueuserdomains | 收集的单词。awk '{print $2}' 命令。
第一个 chown 命令将每个文件和目录的所有者和组更改为 cat /etc/trueuserdomains | 中的所有者和组。awk '{print $2}' 命令。
然后,第二个 chown 命令将 public_html 上的nobody
group 设置为 ,这是一个在主机上可能没有分配给它的用户帐户的组。
这样就可以整理出您的 Web 服务器文件中的权限,但就像您说的那样,它并不能完全描述您的问题的根本原因。
要解决根本问题,请让我们知道以下内容。
如何将文件上传到服务器?工具的名称是什么?当您上传文件时,您能否提供他们在运行上述命令之前拥有的所有者和组权限的示例?