如何使用 sFTP 使属于 www-data 的文件和文件夹可供我的用户读取和写入

如何使用 sFTP 使属于 www-data 的文件和文件夹可供我的用户读取和写入

我已经在 Ubuntu 服务器 v18 上配置了 Wordpress,并为所有文件和目录分配了组www-data并将它们分配给用户www-data:这样我就可以从 Web 界面更新 Wordpress。

我还想使用 FileZilla 或 PHPStorm 编辑文件,并使用 sFTP 连接到我的服务器。

问题是,由于文件和目录已分配给www-data,我无法编辑或删除文件和目录。

我已尝试将我的用户添加到该组www-data,但仍然无法编辑或删除他们。

我如何设置权限、用户和组,以便 Wordpress 和我都能编辑和删除文件和目录?

答案1

我认为最好的方法是使用/etc/crontab目录监视程序启动脚本或服务。后者很容易使用Python 中的看门狗模块

在该脚本中,您将首先进行带时间戳的备份,然后再将文件移动到 Web 服务器目录。/etc/crontab 和服务都允许您以用户 的身份复制文件www-data

目录监视程序会监视您用于将文件放在服务器上的 FTP 目录(这将是一个与 Web 服务器目录无关的专用目录)。这也使其更安全一些。

答案2

您检查过权限吗?是 700 还是 770?

权限如下:

3 组

  • 用户
  • 团体
  • 全部

在每个集合中,都有一个指令或权限级别

  • 执行

因此,最后你会看到:

700 = rwx------ ==> 只有用户可以读取、写入和执行 770 = rwxrwx--- ==> 用户和组可以读取、写入和执行 777 = rwxrwxrwx ==> 所有用户和组都可以读取、写入和执行 600 = rx------ ==> 只有用户可以读取和执行,但不能执行

这是以二进制 0 和 1 计算的。如果启用某个位,则该位为 1,否则为 0

因此,700 实际上是 7-0-0,或者二进制 111-000-000;770 是 111-111-000;600 是 101-000-000

因此,如果其他用户在该组中,则需要确保该组对文件具有读取权限,并在必要时具有写入和执行权限。

您将需要这些权限之一,其中“x”是文件所有者的当前权限级别:

x00 ==> 组没有权限 x10 ==> 组仅对文件具有执行权限 x20 ==> 组仅对文件具有写入权限 x30 ==> 组对文件具有写入和执行权限 x40 ==> 组仅对文件具有读取权限 x50 ==> 组对文件具有读取和执行权限 x60 ==> 组对文件具有读取和写入权限 x70 ==> 组拥有所有访问权限

相关内容