В Ubuntu, в OpenSUSE, в СentOS команда (РНР 7.2) shell_exec() у меня работает, а в SLES12 (РНР7.1) не работает.
Понимаю, что где-то закрыто для безопасности. Да мне не же не на сайте нужно запускать, а просто скрипт под рутом. Полдня искал в инете, нашел только кучу вопросов типа: Почему не работает и как открыть? И кучу одинаковых советов, что мол убрать в РНР.ini эту функцию из disabled. Ну нет у меня ни disabled, ни shell_exec в php.ini. Где в доке написано, как открыть?
Что выведет команда echo ini_get('disable_functions');
И проверь, что запускаемый тобой интерпретатор читает тот php.ini, о котором ты думаешь.
Проверить просто - измени любую настройку и прочитай её в рантайме.
Короче, оно заработало! САМО, утром.... PHP.ini не трогал. Так долго не отвечал, так как пытался сделать чтоб опять не работало. Уже была такая ситуация месяц назад. И тоже само заработало. Не нравится мне это.. Буду пытаться заметить что-нибудь. Не просто так пишу - на нескольких дистрибутивах тестировал в vmware. Даже просто файл создавал с одной строкой Всем спасибо за участие.