Proč daemonizujeme procesy? [uzavřeno]
On 13 února, 2021 by adminOdpověď
To je více než jedna otázka, každá může mít dlouhé odpovědi. Stručně
-
Pokud spustím program na pozadí pomocí & (například „./script &“), co to dělá proces „provedení jiné, než kdybych běžel normálně program, který se sám změní na démona?
Spouštění programu na pozadí, již není přímo ovládáno terminálem (nemůžete jednoduše
^C
it), ale stále může psát do terminálu a zasahovat do vaší práce. Démon se obvykle oddělí od terminálu (kromě rozdvojení) a jeho výstupu / chyby bude přesměrován na soubory. -
Znamená to jednoduše, že když se odhlásím, proces na pozadí se zastaví a démon bude pokračovat v běhu?
Proces na pozadí lze chránit pomocí
nohup
, ale pokud nebude přesměrován jeho výstup, zavře se ter minal by mu zabránil v psaní, což by způsobilo chybu, která by ho pravděpodobně zastavila. -
Chtěl bych vědět, jestli existuje nějaké riziko / jestli je to špatné procvičovat.
Kromě problému se sledováním výstupu programu (a chybových zpráv) existuje také problém s jeho restartováním, pokud by náhodou zemřelo. Servisní skript zapadá do způsobu, jakým jsou navrženy ostatní služby v systému, a poskytuje více / méně standardní způsob ovládání démona.
/dev/tty1
(některé systémy se liší).