0

I want to change the permissions of directories using a shell script which gets executed by a , so this runs under the apache user. Unfortunately there are some directories whose permissions are set to root.

Is there way to run this script as root or are there other alternatives I can consider?

4

2 回答 2

0

您寻找名为sudohttps ://en.wikipedia.org/wiki/Sudo 的工具,但最有可能的是,您应该重新考虑您的应用程序架构,而不是使用 sudo,因为一旦您的 httpd 遭到破坏,攻击者就可以轻松获得 root 权限。

于 2013-07-30T12:40:44.733 回答
0

我最近发布了一个项目,它允许 PHP 获取真实的 Bash shell 并与之交互。在这里获取:https ://github.com/merlinthemagic/MTS

下载后,您只需使用以下代码:

    $shell    = \MTS\Factories::getDevices()->getLocalHost()->getShell('bash', true);
    $return1  = $shell->exeCmd("/path/to/script");
    //the return will be a string containing the return of the script
    echo $return1;

或者您可以简单地绕过脚本,直接在 PHP 中通过 shell 发出原始命令。这种方法将允许您处理异常。

于 2016-05-18T11:04:40.553 回答