avatar

не работает shell_exec(cd /home/user/scripts/; sudo su ./testsh.sh); NULL

Рейтинг 3.9 из 5. Голосов: 233
Den 7 лет назад
7
,

0


Ответы (7)

Den
avatar
Модератор За 6 месяцев на форуме За год на форуме За два года на форуме за 10 сообщений За 100 сообщений за 500 сообщений За 700 сообщений №1 по сообщениям
1026 Mar 10
7 лет назад
не работает
CODE:
$result = shell_exec('cd /home/user/scripts/; sudo su ./testsh.sh');
NULL возвращает
отправить
+ 0

Redy
avatar
За 6 месяцев на форуме За год на форуме За два года на форуме за 10 сообщений За 100 сообщений за 500 сообщений
503 Mar 10
7 лет назад
допишите в команде 2>&1
CODE:
shell_exec('cd /home/user/scripts/; sudo su ./testsh.sh 2>&1');
отправить
+ 0

Den
avatar
Модератор За 6 месяцев на форуме За год на форуме За два года на форуме за 10 сообщений За 100 сообщений за 500 сообщений За 700 сообщений №1 по сообщениям
1026 Mar 10
7 лет назад
пишет
CODE:
sudo: no tty present and no askpass program specified
отправить
+ 0

Redy
avatar
За 6 месяцев на форуме За год на форуме За два года на форуме за 10 сообщений За 100 сообщений за 500 сообщений
503 Mar 10
7 лет назад
добавьте и проверьте полностью строчку
CODE:
www-data ALL=(root) NOPASSWD: /home/user/script/test.sh
в файл/etc/sudoers
отправить
+ 0

Den
avatar
Модератор За 6 месяцев на форуме За год на форуме За два года на форуме за 10 сообщений За 100 сообщений за 500 сообщений За 700 сообщений №1 по сообщениям
1026 Mar 10
7 лет назад
спасибо, заработало
отправить
+ 0

Redy
avatar
За 6 месяцев на форуме За год на форуме За два года на форуме за 10 сообщений За 100 сообщений за 500 сообщений
503 Mar 10
7 лет назад
не забывайте устанавливать директорию, в которой размещен скрипт
отправить
+ 0

Den
avatar
Модератор За 6 месяцев на форуме За год на форуме За два года на форуме за 10 сообщений За 100 сообщений за 500 сообщений За 700 сообщений №1 по сообщениям
1026 Mar 10
7 лет назад
sudo su лучше без SU писать (Добавление)
Redy пишет:
2>&1
означает выводить в консоль и все ошибки 2 выводить в 1й поток 0 — STDIN, 1 — STDOUT и 2 — STDERR
отправить
+ 0


Чтобы оставить комментарий войдите или зарегистрируйтесь