1. 程式人生 > >ubuntu16 php 以root 許可權執行shell命令

ubuntu16 php 以root 許可權執行shell命令

有時候執行php 執行某些shell命令必須使用root許可權.如下設定可以讓php 免密碼執行 sudo

用命令 編輯 /etc/sudoers:

visudo -f /etc/sudoers

加入如下三行:

www-data ALL=(root) NOPASSWD: /bin/cp
www-data ALL=(root) NOPASSWD: /bin/mv
www-data ALL=(root) NOPASSWD: /usr/bin/python
#www-data 是nginx使用者組
#www-data 組可以免root 密碼執行sudo 開頭命令

然後php,或者其他屬於www-data組的程式就可以執行sudo 開頭的shell命令.如:

$shell = "sudo cp ./test.php ./demo.php";
shell_exec($shell);