Ubuntu 12.04 服务器:/var/www 上新复制文件的权限

Ubuntu 12.04 服务器:/var/www 上新复制文件的权限

我运行以下命令在我的 Ubuntu 12.04 Server 上的 /var/www 文件夹设置 ACL:

sudo usermod -g www-data abe
sudo chown -R www-data:www-data /var/www
sudo chmod -R 775 /var/www

我使用 /var/www 文件夹中的 wget 下载了 Wordpress,并解压了下载的文件:

cd /var/www
wget http://wordpress.org/latest.zip
mv latest.zip wordpress.zip
unzip wordpress.zip

我在 mysql 中创建了一个新的数据库和用户,并尝试通过 Web 界面运行设置过程。

当我在 wordpress 中输入配置信息时,出现以下错误消息: 抱歉,但我无法写入 wp-config.php 文件。

当我运行 ls -la 时,我看到这些文件归我的用户 abe 所有,但它们属于组 www-data 的一部分。

每次我将新文件复制到 /var/www 时是否都必须运行 chmod 命令?

sudo chmod -R 775 /var/www

答案1

只需转到终端中 www 目录内的 wordpress 安装目录,并授予以 www-data 身份运行的 Web 服务器的写入权限

sudo chown -R www-data wordpress

答案2

我认为 WP-config.php 没有保存在根目录中。

尝试这样做:chgrp -r www-data wwww/然后chmod -r g+w www/它将递归地更改组,然后以递归方式向组添加写权限。

答案3

请注意,您这里不处理 ACL,只处理基本权限和成员资格。

您可以在这里:

  • 使用该www-data帐户执行任务/var/wwwsudo -u www-data [command]例如使用)。
  • 使用umask 002将创建具有 775 权限的目录和具有 664 权限的文件(如果情况并非如此,否则您在这里不会遇到任何问题)。
  • 使用真实 ACL(如果在文件系统上启用),例如,find /var/www -type d -exec setfacl -m d:g:www-data:rwX {} \;它将在目录 ( ) 上递归创建默认 ACL(d:,因此它将被继承),对所有内容find -type d具有读写访问权限( ),对目录具有执行访问权限( ),对组 ( )具有访问权限。您还可以在所有已创建的文件上添加此 ACL :。rwXg:www-datasetfacl -R -m g:www-data:rwX /var/www

对于最后两点,建议您了解自己在做什么,否则如果出现问题,可能会在文件系统权限中造成很大的混乱。

答案4

当您解压文件时,它们会带有自己的权限,因此您需要编辑权限。但您可以编写一个 shell 脚本,它将为您完成所有过程。

相关内容