Страница 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