V Linuxu se obvykle, když vaše připojení přeruší nebo se uživatel odhlásí ze systému, vaše relace ukončí a všechny procesy prováděné z terminálu se zastaví. Pokud chcete, aby program nebo příkaz běžel na pozadí i po odhlášení nebo ukončení systému, možná budete muset použít příkaz nohup.
Příkaz nohup spustí další programy nebo příkazy se svými poskytnutými argumenty a ignoruje všechny signály zavěšení. Tento příkaz je užitečný, zvláště když jste připojeni k vašemu serveru přes SSH a chcete, aby program nebo příkaz běžel na pozadí i po odpojení od serveru.
Příkaz Nohup Linux
Syntaxe:
nohup COMMAND [ARGS]
nebo
$ nohup options
Chcete-li vyhledat nápovědu týkající se příkazu nohup:
$ nohup --help
Chcete-li zjistit informace o verzi nohup, použijte níže uvedený příkaz:
$ nohup --version
1. Spuštění příkazu v popředí
Ve výchozím nastavení se příkaz nohum spouští v popředí a přesměruje výstup do souboru ‚nohup.output‘. Tento soubor bude vytvořen v aktuálním pracovním adresáři. Pokud uživatel oprávnění nemá, bude vytvořeno v domovském adresáři uživatele.
$ nohup ls
Příklad:

2. Spuštění příkazu na pozadí
Použití příkazu nohup v popředí má nevýhodu v tom, že nemůžete komunikovat s terminálem, dokud neskončí provádění příkazu. Abychom tomu zabránili, spustíme příkaz na pozadí takto
$ nohup ping fosslinux.com
Příklad:

Ve výše uvedeném příkladu můžete vidět, že veškerý výstup příkazu bude připojen k souboru nohup.out. Tento soubor můžete zobrazit pomocí příkazu „cat nohup“ v Terminálu.
[1] 2233
Kde [1] je ID úlohy a 2233 je (PID) procesu na pozadí. Toto ID procesu můžete použít k ukončení procesu na pozadí:
$ kill 2233
Výše uvedený příkaz ukončí proces na pozadí.
3. Přesměrování výstupu do souboru
Ve výchozím nastavení zapisuje příkaz nohup výstup do nohup.out
soubor. Můžete také definovat svůj vlastní výstupní soubor pomocí standardního přesměrování shellu.
$ nohup ls > list.out
Příklad:

Můžete také vytvořit samostatné soubory pro výstup a chybu pomocí následujícího příkazového řádku.
nohup ls > list.out 2 > list.err
4. Spouštění více příkazů
Pomocí nohup můžete také spouštět více příkazů. V níže uvedeném příkladu běží na pozadí příkazy mkdir, bash a ls.
$ nohup bash -c 'mkdir fossDir && ls'
Příklad:

Závěr
V tomto tutoriálu je použití příkazu nohup vysvětleno na jednoduchých příkladech a doufáme, že nyní velmi dobře pochopíte užitečnost tohoto příkazu. Neváhejte a zanechte komentář.