Адрес и порт точно правильный?
обычно sshd демон висит не на 29937, может вы не туда подключаетесь?
Попробуйте выполнить команду попроще, типа whoami или 'echo test >> /tmp/test.txt'
Чтобы выполнить sudo, нужно, например, разрешить пользователю выполнять sudo без запроса пароля, что делается настройкой /etc/sudoers. Добавьте в конце файла для этого юзера строку:
username ALL=NOPASSWD: ALL
теперь просто sudo и все.
Если подключиться к серверу самому под этим пользователем, ваша команда запускается?
Сергей: перевесел на этот порт, для безопасности. Сам скрипт запускается и выполняется правильно, если это делать на сервере. Насчет /ect/sudoers опробую, спасибо.
Сергей: теперь вообще ничего не понимаю. Соединение точно устанавливается. Так как стоит проверка на это. Простая команда выполняется 'echo test >> /tmp/test.txt'. Добавил в /etc/sudoers то что вы сказали, да, теперь пароль не просит, когда на серваке выполняю скрипт. Но из php всё равно не выполняется. Ума не приложу.
В начале скрипта если добавить echo >> /tmp/test, оно выполнится, или сразу не хочет выполняться скрипт?
sudo можно прописать для конкретной команды прямо внутри скрипта, чтобы через sudo выполнялся не весь скрипт, а только конкретная его часть.
Вообще, надо конечно код смотреть и ошибки...
кроме того, непонятно зачем вы делаете sudo -u user
если вам нужно выполнить команду от суперпользователя, не нужно указывать имя юзера, иначе sudo будет выполнять ваш bash от имени user, а не от root.