Назад | Перейти на главную страницу

Запуск программного обеспечения VIA SSH

Мне любопытно, как можно запустить программное обеспечение через туннель SSH, но сохранить программное обеспечение на сервере SSH.

Например, я размещаю сервер minecraft для своего брата и его друзей. Если что-то произойдет, и мне нужно перезапустить программное обеспечение minecraft, хотя я могу сделать это с любого компьютера через Putty или терминал, этот сеанс запущенного программного обеспечения minecraft останется в живых только в том случае, если я сохраню туннель SSH.

Как я могу запустить программное обеспечение и службы с помощью SSH, если клиент SSH не будет размещать сеансы программного обеспечения?

В этом примере я буду использовать svnserve как процесс-демон, который необходимо запустить. Итак, предполагая, что ваше имя пользователя SSH - «kyle», а имя хоста вашего сервера - «home.example.com», вы можете выполнить следующее:

ssh -f kyle@home.example.com "svnserve -d"

Иногда пользователь должен принудительно выделить псевдотерминал, в этом случае используйте флаг -t:

ssh -t kyle@home.example.com "svnserve -d"

Если ваш процесс-демон не знает, как «демонизировать» себя, вы можете отправить его в фоновый режим:

ssh -f kyle@home.example.com "/usr/local/bin/minecraft-server &"

Настоятельно рекомендуется прочитать страницу руководства по SSH ...;) Вы можете найти эту информацию самостоятельно, если потратили 2 минуты на чтение страницы руководства клиента SSH.

Вы должны использовать screen или tmux.

экран запуска, затем вы можете прикрепить и отсоединить терминал по желанию (ctrl + A, D) для отсоединения.