GNU/Linux >> Znalost Linux >  >> Linux

Jak spustit Node.js jako proces na pozadí a nikdy nezemřít?

nohup node server.js > /dev/null 2>&1 &

  1. nohup znamená:Neukončujte tento proces, i když je stty přerušen.
  2. > /dev/null znamená:stdout jde do /dev/null (což je fiktivní zařízení, které nezaznamenává žádný výstup).
  3. 2>&1 znamená:stderr také přejde na stdout (který je již přesměrován na /dev/null ). Můžete nahradit &1 cestou k souboru, aby se zachoval protokol chyb, např.:2>/tmp/myLog
  4. & na konci znamená:spustit tento příkaz jako úlohu na pozadí.

Jednoduché řešení (pokud nemáte zájem vrátit se k procesu, jen chcete, aby běžel):

nohup node server.js &

Je zde také jobs Chcete-li zobrazit indexovaný seznam těchto procesů na pozadí. A proces na pozadí můžete zabít spuštěním kill %1 nebo kill %2 přičemž číslo je index procesu.

Výkonné řešení (umožňuje vám znovu se připojit k procesu, pokud je interaktivní):

screen

Poté můžete odpojit stisknutím Ctrl+a+d a poté znovu připojit spuštěním screen -r

Zvažte také novější alternativu k obrazovce, tmux.


Opravdu byste měli zkusit použít screen . Je to trochu složitější než jen udělat nohup long_running & , ale pochopení obrazovky, jakmile se už nikdy nevrátíte.

Nejprve spusťte relaci obrazovky:

[email protected]:~$ screen

Spusťte, co chcete:

wget http://mirror.yandex.ru/centos/4.6/isos/i386/CentOS-4.6-i386-binDVD.iso

Stiskněte ctrl+A a poté d. Hotovo. Vaše relace pokračuje na pozadí.

Všechny relace můžete vypsat podle screen -ls a k některým připojit pomocí screen -r 20673.pts-0.srv příkaz, kde 0673.pts-0.srv je seznam záznamů.


Linux
  1. Jak najít a zabít zombie proces v Linuxu

  2. Ssh – Jak zrušit běžící proces a přiřadit jej k novému prostředí obrazovky?

  3. Jak pozastavit a přenést proces na pozadí do popředí?

  1. Jak spustit program na pozadí a také pomocí &&k provedení jiného příkazu?

  2. Jak spustit skript po obnovení a po odemknutí obrazovky?

  3. Jak zastavit proces obrazovky v linuxu?

  1. Jak a kde je $term interpretován?

  2. Jak spustit proces Rsync na pozadí

  3. Jak mohu stisknout Ctrl-Z a bg jedním stisknutím klávesy, aby proces pokračoval na pozadí?