gpt4 book ai didi

PHP shell_exec - 使用 RSYNC 作为没有密码的 root

转载 作者:行者123 更新时间:2023-12-04 05:57:15 24 4
gpt4 key购买 nike

我正在尝试为登台-> 生产发布脚本创建一个 PHP Web 界面。 Web 界面是安全的(内联网、密码等),所以我很高兴让 apache 充当 root 用户来执行 rsync。 root 用户没有密码,SSH 访问使用 key 文件。

我已经尝试在 shell 脚本中 sudo-ing rysnc 命令......

sudo rsync --verbose --recursive --times --perms --links --delete /tmp/dir1/* /tmp/dir2/

并通过将以下内容添加到 sudoers 文件来允许 apache 运行 rsync...
apache ALL=(ALL) NOPASSWD:/usr/bin/rsync

我正在使用 PHP shell_exec 来调用脚本...
$result = shell_exec('bash /tmp/syncscript.sh 2>&1');

我收到以下错误...
sorry, you must have a tty to run sudo

如何设置以便我可以像 root 用户一样运行 rsync 命令?

谢谢!

最佳答案

如果您想使用 PHP 中的 SUDO,您可能想尝试我在这篇文章中写的内容。它解决了我所有的问题,我的设置与您的类似,我在内部有一个 DEV 服务器,但我希望它做只有 root 才能做的事情......

How to use exec() in php in combination with ssh 'hostname' command?

祝你好运

关于PHP shell_exec - 使用 RSYNC 作为没有密码的 root,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9363712/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com