【问题标题】:How do I run rsync in exec from php?如何从 php 在 exec 中运行 rsync?
【发布时间】:2020-05-17 09:57:18
【问题描述】:

我正在运行 Ubuntu Server 16.04。

我可以在终端中毫无问题地运行这个命令:

rsync -rtv source user@ip:/dest/

但是当我尝试在 PHP 中使用 exec 运行相同的命令时,它不起作用。

exec('rsync -rtv source user@ip:/dest/');

这个周末我尝试了几个教程,但我无法让它工作,我认为问题是 apache 用户没有运行 rsync 的权限,但我在这里可能错了。

这是我尝试过的教程之一,我认为这是我的问题,但我不明白该怎么做:

https://serverfault.com/questions/248979/php-rsync-with-exec-not-working

【问题讨论】:

    标签: php apache exec rsync


    【解决方案1】:

    我认为您的问题是运行 php 的用户对该文件夹没有权限。 找出用户是谁,并尽可能将其设置为所有者。

    【讨论】:

    • Alpix,感谢您的回答。用户似乎是 www-data。您是指对源文件夹或目标文件夹的权利吗?以及如何将 www-data 设置为所有者?
    • www-data需要source的读权限和dest的写权限!
    猜你喜欢
    • 1970-01-01
    • 2012-05-28
    • 1970-01-01
    • 2012-02-21
    • 1970-01-01
    • 2020-03-21
    • 2014-02-05
    • 1970-01-01
    • 2020-11-15
    相关资源
    最近更新 更多