2015-04-23 4 views
0
ssh -t [email protected] "ls -al /root/test/" 

выше код работает отлично и отображает все содержимое папки каталога теста, но этот код некак выполнять сценарии инициализации из командной строки с помощью SSH

ssh -t [email protected] "/etc/init.d/mysql start" 

Он не запускается сервер MySQL , Я подключился к серверу и использую ту же команду для запуска сервера mysql

Может ли кто-нибудь объяснить это поведение? что я делаю неправильно немного озадачен :(

ответ

0

ли что-то вроде этого:.

ssh [email protected] "/etc/init.d/mysql start </dev/null> /tmp/log 2>&1 &"

SSH необходимо использовать стандартный ввод и стандартный вывод для взаимодействия Это позволит ему сделать это, и перенаправить вывод куда-то . полезная

+0

ssh -t предоставляет puedo терминал для взаимодействия –

0

Я не уверен, что корни этого поведения, возможно потому, что SSH выделяет псевдо-терминал, однако вы можете использовать обходной путь с Sudo:.

ssh -t [email protected] "sudo service mysql start" 
+0

это не сработало @Andrey :( –

+0

Странно, что у ОС есть? Я тестировал RedHat 7 –

+0

Я использую установку centos 6.4 и maria db 10.0.17. Я еще не пробовал исследовать, почему это не сработало после использования этой команды ssh user @ hostname "/etc/init.d/mysql start < /dev/null >/tmp/log 2> & 1 &" –

Смежные вопросы