Принятый ответ предлагает использовать nohup . Я бы предпочел использовать pm2 . Использование pm2 над nohup имеет много преимуществ, таких как поддержание приложения в рабочем состоянии, поддержка файлов журнала для приложения и многие другие функции. Для более подробной информации проверьте это .
Для установки pm2 вам необходимо скачать npm . Для системы на основе Debian
sudo apt-get install npm
и для Redhat
sudo yum install npm
Или вы можете следовать этим инструкциям .
После установки npm используйте его для установки pm2
npm install pm2@latest -g
Как только вы закончите, вы можете запустить ваше приложение по
$ pm2 start app.js # Start, Daemonize and auto-restart application (Node)
$ pm2 start app.py # Start, Daemonize and auto-restart application (Python)
Для мониторинга процесса используйте следующие команды:
$ pm2 list # List all processes started with PM2
$ pm2 monit # Display memory and cpu usage of each app
$ pm2 show [app-name] # Show all informations about application
Управление процессами с использованием либо имени приложения, либо идентификатора процесса, либо управление всеми процессами вместе:
$ pm2 stop <app_name|id|'all'|json_conf>
$ pm2 restart <app_name|id|'all'|json_conf>
$ pm2 delete <app_name|id|'all'|json_conf>
Файлы журналов можно найти в
$HOME/.pm2/logs #contain all applications logs
Двоичные исполняемые файлы также можно запускать с использованием pm2. Вы должны внести изменения в файл Джейсона. Измените "exec_interpreter" : "node"
на "exec_interpreter" : "none".
(см. Раздел атрибутов ).
#include <stdio.h>
#include <unistd.h> //No standard C library
int main(void)
{
printf("Hello World\n");
sleep (100);
printf("Hello World\n");
return 0;
}
Компиляция кода выше
gcc -o hello hello.c
и запустить его с np2 в фоновом режиме
pm2 start ./hello