nohup node server.js > /dev/null 2>&1 &
nohupsignifie :Ne terminez pas ce processus même lorsque le stty est coupé.> /dev/nullsignifie :stdout va à /dev/null (qui est un périphérique factice qui n'enregistre aucune sortie).2>&1signifie :stderr va également vers la sortie standard (qui est déjà redirigée vers/dev/null). Vous pouvez remplacer &1 par un chemin de fichier pour conserver un journal des erreurs, par exemple :2>/tmp/myLog&à la fin signifie :exécutez cette commande en tâche de fond.
Solution simple (si vous n'êtes pas intéressé à revenir au processus, voulez juste qu'il continue à fonctionner) :
nohup node server.js &
Il y a aussi le jobs commande pour voir une liste indexée de ces processus en arrière-plan. Et vous pouvez tuer un processus en arrière-plan en exécutant kill %1 ou kill %2 le numéro étant l'indice du processus.
Solution puissante (permet de se reconnecter au processus s'il est interactif) :
screen
Vous pouvez ensuite détacher en appuyant sur Ctrl+a+d puis rattacher en exécutant screen -r
Considérez également la nouvelle alternative à l'écran, tmux.
Vous devriez vraiment essayer d'utiliser screen . C'est un peu plus compliqué que de simplement faire nohup long_running & , mais comprendre l'écran une fois que vous ne revenez plus jamais.
Démarrez d'abord votre session d'écran :
example@unixlinux.online:~$ screen
Exécutez tout ce que vous voulez :
wget http://mirror.yandex.ru/centos/4.6/isos/i386/CentOS-4.6-i386-binDVD.iso
Appuyez sur ctrl+A puis sur d. Fait. Votre session se poursuit en arrière-plan.
Vous pouvez lister toutes les sessions par screen -ls , et attachez-les à certains par screen -r 20673.pts-0.srv commande, où 0673.pts-0.srv est une liste d'entrées.