Страница 1 из 1

sudo в php

Добавлено: 2010-07-21 11:07:35
Ly

Код: Выделить всё

<?
system("/usr/local/bin/sudo -b sh /www/admin.cp/db.sh add dbname");
?>
Скрипт отрабатывает из консоли, но опять же не работает из браузера (от апача)

Код: Выделить всё

# php -r 'system("/usr/local/bin/sudo -b sh /www/admin.cp/db.sh add dbname453");'
//(работает, т.к. запускаю от рута...)

Код: Выделить всё

# id www
uid=80(www) gid=80(www) groups=80(www),0(wheel)

Код: Выделить всё

cp# tail /usr/local/etc/sudoers
...
www ALL= (ALL) NOPASSWD: ALL
В каком месте я дурак? =/

Re: sudo в php

Добавлено: 2010-07-21 12:07:17
Ly
Сам скрипт db.sh

Код: Выделить всё

#!/bin/bash
# if add
if [ "$1" = "add" ]; then
    DB=$2
        if [ "$3" ]; then
        PASS=$3
        else
        PASS=1234
        fi
    if [ "$2" ]; then
    echo creating DB $2...
     mysql -u root -e"CREATE DATABASE $DB"
    fi
fi
Все это работает на vps в jail, если вдруг важно

Вот еще

Код: Выделить всё

# cat /etc/passwd | grep www
www:*:80:80:World Wide Web Owner:/nonexistent:/bin/sh