GNU/Linux >> Znalost Linux >  >> Linux

Linux – Kdy nemám zabít -9 A proces?

Vždy velmi váhám se spuštěním kill -9 , ale vidím, že ostatní administrátoři to dělají téměř běžně.

Domnívám se, že pravděpodobně existuje rozumná střední cesta, takže:

  1. Kdy a proč by měl kill -9 být použit? Kdy a proč ne?
  2. Co byste měli vyzkoušet, než to uděláte?
  3. Jaký druh ladění „zaseknutého“ procesu by mohl způsobit další problémy?

Přijatá odpověď:

Obecně byste měli použít kill (zkratka pro kill -s TERM , nebo na většině systémů kill -15 ) před kill -9 (kill -s KILL ), aby měl cílový proces možnost po sobě uklidit. (Procesy nemohou zachytit ani ignorovat SIGKILL , ale mohou a často chytí SIGTERM .) Pokud procesu nedáte šanci dokončit to, co dělá, a vyčistit, může zanechat poškozené soubory (nebo jiný stav), kterému po restartu nebude rozumět.

strace /truss , ltrace a gdb jsou obecně dobré nápady, jak zjistit, proč se zasekl proces. (truss -u na Solaris je zvláště užitečné; Nacházím ltrace příliš často předkládá argumenty volání knihovny v nepoužitelném formátu.) Solaris má také užitečné /proc -založené nástroje, z nichž některé byly portovány na Linux. (pstack je často užitečné).


Linux
  1. Jak zabít proces zombie na Linuxu

  2. 10+ příkladů pro zabití procesu v Linuxu

  3. Co dělat, když Ctrl + C nemůže zabít proces?

  1. Jak zabít proces v Linuxu pomocí příkazu?

  2. Linux:zavřete program pomocí příkazového řádku (nezabijte jej)

  3. Kdy bych neměl zabít -9 proces?

  1. Příklady příkazů kill v Linuxu

  2. Linux:Najděte a zabijte zombie procesy

  3. linuxový skript pro zabití procesu Java