0
我有一個腳本script.py我可以通過CGI執行導航到mydomain.com/runscript。通過CGI執行需要root訪問的腳本
該腳本會使子進程調用echo「mysqldump ...」| sudo -i and sudo python using os.system(COMMAND)。當我嘗試通過網絡鏈接到運行該腳本,我得到了/var/log/apache2/error.log此錯誤:
[週五16年7月29日:52:42.515223 2016年] [CGI:錯誤AH01215:sudo:沒有tty存在,也沒有指定askpass程序
這是因爲CGI運行時用戶www-data,它沒有sudo權限。然而,錯誤仍然存在
%www-data ALL = (root) NOPASSWD: /var/www/html/scripts/script.py
:
我試着加入這個我的sudoers文件。爲什麼子進程調用不能接收根訪問權限,我怎樣才能把它們給它們,只有它們?謝謝!