GNU/Linux >> Znalost Linux >  >> Linux

Jak restartovat (nebo resetovat) běžící proces v Linuxu?

Mám dva linuxové systémy komunikující přes sokety (Desktop a vývojová deska založená na ARM).

Chci restartovat (nebo resetovat) svou klientskou aplikaci (běžící na vývojové desce), když server odešle konkrétní předdefinovanou zprávu. Nechci restartovat (restartovat) Linux, chci jen, aby se klientská aplikace sama restartovala automaticky.

Nedokážu pochopit, jak by se to mělo udělat.

Přijatá odpověď:

Normální způsob, jak to udělat, je nechat váš program ukončit a použít monitorovací systém k jeho restartu. init program takový monitorovací systém nabízí. Existuje mnoho různých init programů (SysVinit, BusyBox, Systemd atd.) se zcela odlišnými konfiguračními mechanismy (vždy se zapisuje konfigurační soubor, ale umístění a syntaxe souboru se liší), takže si vyhledejte dokumentaci toho, který používám. Nakonfigurujte init tak, aby spustil váš program při bootování nebo na výslovnou žádost a aby jej restartoval, pokud zanikne. Existují také lepší monitorovací programy, ale nezníte, jako byste je potřebovali. Tento přístup má mnoho výhod oproti tomu, že program provede restart sám:je to standardní, takže můžete restartovat spoustu služeb, aniž byste se museli starat o to, jak jsou vytvořeny; funguje, i když program zemře kvůli chybě.

Existuje standardní mechanismus, jak říci procesu, aby skončil:signály. Pošlete svému programu signál TERM. Pokud váš program potřebuje provést nějaké vyčištění, napište obslužný program signálu. To nebrání tomu, abyste měli příkaz pro konkrétní program, který jej vypne, pokud máte administrativní kanál k odesílání příkazů, jako je tento.


Linux
  1. Jak nainstalovat vtop na Linux

  2. Jak zabít běžící procesy v Linuxu

  3. Jak zabít proces běžící na konkrétním portu v Linuxu?

  1. Jak zabít proces běžící na konkrétním portu v Linuxu?

  2. Jak nastavit ID procesu v Linuxu pro konkrétní program

  3. Jak restartovat vzdálený server MySQL běžící na Ubuntu linux?

  1. Jak zabít proces zombie na Linuxu

  2. Linux – jak získat čas nástěnných hodin běžícího procesu?

  3. Jak mohu vytvořit soubor výpisu běžícího procesu v Linuxu?