Pomocí příkazu nohup v systému Linux systém ignoruje příkaz hangup HUP. Díky tomu mohou procesy pokračovat v běhu na pozadí. Jeho výstup je poté přesměrován do souboru nohup.out nebo jiného souboru podle vašeho výběru.

Co je Linux nohup?

Abychom pochopili, co je příkaz nohup v systému Linux, je třeba se podívat na SIGHUP. Jedná se o signál, který je generován v systému Linux mimo jiné v případě selhání připojení na datové lince mezi operačním systémem a jinou aplikací. Za určitých okolností je však nutné, aby tento signál nebyl odeslán. To je případ, kdy má aplikace pokračovat v běhu i poté, co se uživatel odhlásil ze systému. K potlačení signálu a umožnění pokračování běhu programů na pozadí se používá Linux nohup.

Jak funguje příkaz nohup v systému Linux?

Linux nohup je součástí všech běžných distribucí Linuxu, jako jsou Debian a Ubuntu, a proto není nutné jej instalovat samostatně. Můžete jej použít k tomu, abyste systému zadali spuštění konkrétního programu na pozadí, čímž jej oddělíte od přihlašovacího shellu. Veškerý výstup je automaticky přesměrován do složky nohup.out. U delších procesů to má tu výhodu, že se můžete odhlásit, aniž byste proces přerušili.

Jak vypadá syntaxe příkazu nohup v systému Linux?

Základní syntaxe příkazu nohup v systému Linux je vždy stejná:

$ nohup [Command] [Argument] [&]
bash

„[Příkaz]“ a „[Argument]“ jsou parametry, které lze přizpůsobit. Chcete-li umožnit procesům pokračovat v běhu na pozadí po odhlášení, použijte „[&]“.

Jaké možnosti má příkaz nohup?

Linux nohup nepřijímá žádné jiné volby než dvě standardní „-h“ nebo „–help“ a „-v“ nebo „–version“. Pouze v případě, že nezadáte parametr pro „[příkaz]“, je povolena volba „-p“ nebo „–parents“.

Příklady použití příkazu nohup v systému Linux

Na závěr vám pro lepší pochopení fungování příkazu ukážeme několik příkladů.

$ nohup bash example.sh
bash

Tím se příkaz spustí na popředí. Výstup příkazu se automaticky přesměruje do souboru nohup.out.

$ nohup bash example.sh > output.txt
bash

Tento příkaz přesměruje výstup do dokumentu output.txt.

$ nohup bash example.sh &
bash

Použitím tohoto vstupu bude příkaz pokračovat a pokračovat ve spuštění na pozadí. Pokud chcete tento stav zvrátit a vrátit příkaz do popředí, můžete spustit příkaz fg.

Přejít do hlavního menu