
Я подключаюсь к своему серверу через SSH, на котором установлены Erlang и Cowboy для запуска моей веб-страницы.
ssh [email protected]
Затем я запускаю свое веб-приложение, выполнив:
./_rel/web_server_example/bin/web_server_example console
Что приводит меня к последней строке, содержащей:
([email protected])1>
приглашение erlang. Теперь мне нужны и сервер, и мой домашний компьютер, который к нему подключен, потому что если я закрою терминал, то программа erlang на сервере остановится. Как мне сохранить программу работающей, а домашний компьютер выключить?
решение1
У вас есть (как минимум) 2 варианта:
1) Используйте nohup
. Команда:
nohup ./_rel/web_server_example/bin/web_server_example console &
затем вы можете выйти из сеанса ssh. Вывод вашего процесса будет перенаправлен в файл nohup.out
2) Используйте GNU screen. Скорее всего, вам сначала понадобится установить его: apt-get install screen
. Затем:
screen bash
./_rel/web_server_example/bin/web_server_example console
<Ctrl-A> D
На этом этапе у вас будет сеанс screen, работающий в фоновом режиме. Вы можете выйти из сеанса ssh. Прелесть способа screen в том, что вы можете подключиться снова позже. Войдите на этот сервер и введите команду screen -r
. Вы вернетесь к своей web_server_example
команде и сможете делать такие вещи, как нажатие, чтобы прервать ее или взаимодействовать с ней каким-либо другим способом.