Как я могу заставить мой сервер продолжать работать без поддержки ssh-соединения?

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

ssh root@my.ip.adress

Затем я запускаю свое веб-приложение, выполняя;

./_rel/web_server_example/bin/web_server_example console

Что оставляет меня в последней строке, содержащей;

(web_server_example@127.0.0.1)1> 

эрланг подсказка. Теперь мне нужен и сервер, и мой домашний компьютер, который к нему подключен, потому что, если я закрою терминал, он остановит программу erlang на сервере. Как сохранить работоспособность программы и отключить домашний компьютер?

1 ответ

Решение

У вас есть (как минимум) 2 варианта:

1) Использование nohup, Команда:

nohup ./_rel/web_server_example/bin/web_server_example console &

тогда вы можете выйти из сеанса SSH. Вывод вашего процесса будет перенаправлен в файл nohup.out

2) Используйте экран GNU. Скорее всего, вам нужно сначала установить его: apt-get install screen, Затем:

screen bash
./_rel/web_server_example/bin/web_server_example console
<Ctrl-A> D

На этом этапе у вас будет сеанс экрана, работающий в фоновом режиме. Вы можете выйти из сеанса SSH. Прелесть экранного способа делать вещи в том, что вы можете прикрепить его позже. Войдите на этот сервер и введите команду screen -r, Вы вернетесь к своему web_server_example команда, и вы можете делать такие вещи, как нажатие, чтобы прервать его или вмешиваться в него каким-либо другим способом.

Другие вопросы по тегам