Zaakceptowana odpowiedź sugeruje użycie nohup . Wolałbym raczej użyć pm2 . Korzystanie PM2 nad nohup ma wiele zalet, takich jak utrzymywanie aplikacja żywy, utrzymania logów dla aplikacji i wiele więcej innych funkcji. Aby uzyskać więcej informacji, sprawdź to .
Aby zainstalować pm2 , musisz pobrać npm . Dla systemu opartego na Debianie
sudo apt-get install npm
i dla Redhata
sudo yum install npm
Lub możesz postępować zgodnie z tymi instrukcjami . Po zainstalowaniu npm użyj go, aby zainstalować pm2
npm install pm2@latest -g
Po zakończeniu możesz rozpocząć aplikację
$ pm2 start app.js # Start, Daemonize and auto-restart application (Node)
$ pm2 start app.py # Start, Daemonize and auto-restart application (Python)
Do monitorowania procesu użyj następujących poleceń:
$ 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
Zarządzaj procesami przy użyciu nazwy aplikacji lub identyfikatora procesu lub zarządzaj wszystkimi procesami jednocześnie:
$ pm2 stop <app_name|id|'all'|json_conf>
$ pm2 restart <app_name|id|'all'|json_conf>
$ pm2 delete <app_name|id|'all'|json_conf>
Pliki dziennika można znaleźć w
$HOME/.pm2/logs #contain all applications logs
Binarne pliki wykonywalne można również uruchamiać za pomocą pm2. Musisz dokonać zmiany w pliku Jason. Zmień "exec_interpreter" : "node"
, na "exec_interpreter" : "none".
(patrz sekcja atrybutów ).
#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;
}
Kompilowanie powyższego kodu
gcc -o hello hello.c
i uruchom go z np2 w tle
pm2 start ./hello