2017-01-05 6 views
0

Я написал программу CLI kill_all_ssh в Linux с использованием кода C и использую защищенную оболочку для подключения к ssh-серверу. Когда я выполняю команду CLI, чтобы закрыть все сеансы SSH, я могу получить подсказку, что указанный SSH сессию закрытой следующим образом:Закрыть соединение SSH и изменить IP-адрес одновременно

[email protected]:~$ ./cli-kill-all-ssh 
Connection to 192.168.1.102 closed by remote host. 
Connection to 192.168.1.102 closed. 

У меня также есть программа, которая может изменить IP-адрес сервера SSH, но когда Я изменяю IP-адрес сервера ssh, я потерял соединение с сервером, а консоль ssh зависает без какого-либо ответа.

Я пытаюсь разблокировать ребенка, чтобы убить всю сессию ssh и одновременно изменить IP-адрес родителя, но он не работает.

Может ли кто-нибудь дать мне подсказку?

Заранее благодарен!

ответ

0

Если вы хотите убить все ssh-соединения и изменить IP-адрес сервера, поместите обе команды в один скрипт и запустите команду nohup, чтобы убить ssh-соединения не убило скрипт.
nohup /path/to/script/killscript.sh &
Возможно, это то, что вам нужно.

+0

Благодарим вас за предложение, я попробую и даю вам результаты тестирования. –

+0

Я следую вашей информации и нахожу ссылку на реализацию nohup в коде C http://stackoverflow.com/questions/10985544/using-c-to-send-an-exec-process-to-the-background –

+0

Я нашел изменить IP-адрес и убить все команды сеанса ssh не могут быть демонанизированы. Если вы обеимируете эти две команды, они оба работают неправильно. –

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

  • Нет связанных вопросов^_^