È»¶ø£¬ÈκÎϵͳ¶¼ÎÞ·¨ÍêÈ«±ÜÃâ½ø³ÌÒì³£ÖÕÖ¹»ò½©Ê¬½ø³ÌµÄ²úÉú
ÕâЩ¡°½©Ê¬¡±½ø³Ì²»½öÕ¼ÓÃϵͳ×ÊÔ´£¬»¹¿ÉÄÜÓ°ÏìÕûÌåÐÔÄܺͰ²È«ÐÔ
Òò´Ë£¬Linuxϵͳ¹ÜÀíÔ±±ØÐëÕÆÎÕ¡°ÊÕʬ´¦Àí¡±¼¼ÇÉ£¬¼´ÓÐЧ¹ÜÀíºÍÇåÀíÕâЩÒì³£½ø³Ì£¬È·±£ÏµÍ³³ÖÐø¸ßЧÔËÐÐ
±¾ÎĽ«ÉîÈë̽ÌÖLinuxÊÕʬ´¦ÀíµÄÖØÒªÐÔ¡¢ÔÀí¡¢·½·¨ÒÔ¼°×î¼Ñʵ¼ù£¬ÎªÏµÍ³¹ÜÀíÔ±ÌṩһÌ×È«Ãæ¶øÓÐÁ¦µÄ¹¤¾ß¼¯
Ò»¡¢LinuxÊÕʬ´¦ÀíµÄÖØÒªÐÔ ÔÚLinuxϵͳÖУ¬½ø³ÌÊÇÖ´ÐÐÈÎÎñµÄ»ù±¾µ¥Î»
Õý³£Çé¿öÏ£¬µ±Ò»¸ö½ø³ÌÍê³ÉÆäÈÎÎñºó£¬»áÏò¸¸½ø³Ì·¢ËÍÒ»¸öÖÕÖ¹Ðźţ¬²¢ÊÍ·ÅËùÕ¼ÓõÄ×ÊÔ´
È»¶ø£¬Èç¹û¸¸½ø³ÌδÄܼ°Ê±²¶»ñÕâÒ»ÐźŲ¢µ÷ÓÃ`wait()`ϵͳµ÷ÓÃÀ´»ØÊÕ×Ó½ø³ÌµÄ×ÊÔ´£¬×Ó½ø³Ì¾Í»áת±äΪ½©Ê¬½ø³Ì£¨Zombie Process£©
½©Ê¬½ø³Ì²»ÔÙÖ´ÐÐÈκδúÂ룬Ҳ²»ÏûºÄCPUºÍÄÚ´æ×ÊÔ´£¬µ«ËüÃÇÈÔÈ»±£ÁôÔÚ½ø³Ì±íÖУ¬Õ¼ÓÃÒ»¸ö½ø³ÌºÅ£¨PID£©ºÍÉÙÁ¿ÄÚºËÊý¾Ý½á¹¹
ËäÈ»µ¥¸ö½©Ê¬½ø³ÌµÄÓ°Ïì¿ÉÄÜ΢²»×ãµÀ£¬µ«Ôڸ߲¢·¢»ò³¤Ê±¼äÔËÐеÄϵͳÖУ¬´óÁ¿½©Ê¬½ø³ÌµÄ»ýÀۻᵼÖ½ø³Ì±íºÄ¾¡£¬½ø¶øÓ°Ïìнø³ÌµÄ´´½¨ºÍϵͳÎȶ¨ÐÔ
´ËÍ⣬½©Ê¬½ø³ÌµÄ´æÔÚ»¹¿ÉÄÜÑÚ¸ÇDZÔڵĸ¸½ø³Ì±à³Ì´íÎ󣬵¼Ö¸üÑÏÖØµÄϵͳÎÊÌâ
Òò´Ë£¬¶¨ÆÚÇåÀí½©Ê¬½ø³ÌÊÇά»¤Linuxϵͳ½¡¿µÔËÐеÄÖØÒªÒ»»·
¶þ¡¢LinuxÊÕʬ´¦ÀíµÄÔÀí Àí½âLinuxÊÕʬ´¦ÀíµÄÔÀí£¬¹Ø¼üÔÚÓÚÕÆÎÕ½ø³ÌÉúÃüÖÜÆÚ¹ÜÀí
LinuxÄÚºËͨ¹ý½ø³Ì¿ØÖƿ飨PCB£©À´¹ÜÀíÿ¸ö½ø³ÌµÄÐÅÏ¢£¬°üÀ¨½ø³ÌID¡¢¸¸½ø³ÌID¡¢×´Ì¬¡¢ÓÅÏȼ¶µÈ
µ±½ø³ÌÖÕֹʱ£¬ÆäPCB²»»áÁ¢¼´±»É¾³ý£¬¶øÊǵȴý¸¸½ø³Ìͨ¹ý`wait()`ϵÁк¯ÊýÀ´»ØÊÕ×ÊÔ´
Èç¹û¸¸½ø³ÌδִÐд˲Ù×÷£¬¸Ã½ø³ÌµÄ״̬½«±äΪ½©Ê¬£¨Z£©£¬Ö±µ½¸¸½ø³Ì»òÏµÍ³ÖØÆô
LinuxÌṩÁËһϵÁй¤¾ßºÍ»úÖÆÀ´°ïÖú¹ÜÀíÔ±¼à¿ØºÍ¹ÜÀí½ø³Ì£¬°üÀ¨`ps`¡¢`top`¡¢`htop`µÈÃüÁîÓÃÓڲ鿴½ø³Ì״̬£¬`kill`ÃüÁîÓÃÓÚ·¢ËÍÐźŸø½ø³Ì£¬ÒÔ¼°`init`ϵͳ£¨Èçsystemd£©×÷ΪËùÓй¶ù½ø³ÌµÄ×îÖÕ¸¸½ø³Ì£¬¸ºÔðÇåÀíËüÃÇ
Èý¡¢LinuxÊÕʬ´¦ÀíµÄ·½·¨ 1. ÊÖ¶¯Ê¶±ðÓëÇåÀí - ʹÓÃpsÃüÁͨ¹ý`ps aux | grep Z`¿ÉÒÔÁгöËùÓн©Ê¬½ø³Ì
`ps`ÃüÁîÏÔʾËùÓнø³Ì£¬`aux`Ñ¡ÏîÌṩÁËÏêϸµÄ½ø³ÌÐÅÏ¢£¬`grep Z`Ôòɸѡ³ö״̬Ϊ½©Ê¬µÄ½ø³Ì
- ʹÓÃkillÃüÁËäȻֱ½Ókill½©Ê¬½ø³ÌÎÞЧ£¨ÒòΪËüÃÇÒѾÖÕÖ¹£©£¬µ«¿ÉÒÔͨ¹ýɱËÀÆä¸¸½ø³ÌÀ´´¥·¢ÏµÍ³µÄ×Ô¶¯ÇåÀí»úÖÆ
ʹÓÃ`kill -HUP <¸¸½ø³ÌPID`»ò`kill -9 <¸¸½ø³ÌPID`£¨½÷É÷ʹÓ㬿ÉÄܵ¼ÖÂÊý¾Ý¶ªÊ§£©¿ÉÒÔÇ¿ÖÆ¸¸½ø³Ì½áÊø£¬systemdµÈinitϵͳ»á½Ó¹Ü²¢ÇåÀí¹Â¶ù½ø³Ì
2. ×Ô¶¯»¯¼à¿ØÓëÇåÀí - ±àд¼à¿Ø½Å±¾£ºÀûÓÃBash½Å±¾½áºÏps¡¢grep¡¢`awk`µÈ¹¤¾ß£¬¶¨ÆÚ¼ì²é²¢´¦Àí½©Ê¬½ø³Ì
½Å±¾¿ÉÒÔ×Ô¶¯·¢Ë;¯¸æÓʼþ¸ø¹ÜÀíÔ±£¬»ò³¢ÊÔÖØÆôÎÊÌ⸸½ø³Ì
- ÀûÓÃϵͳ·þÎñ£ºsystemdµÈÏÖ´úinitϵͳÌṩÁ˸üÇ¿´óµÄ½ø³Ì¹ÜÀí·þÎñ£¬Äܹ»×Ô¶¯´¦Àí¹Â¶ù½ø³ÌºÍ½©Ê¬½ø³Ì
ͨ¹ýÅäÖÃsystemd·þÎñµ¥ÔªÎļþ£¬¿ÉÒÔÉèÖÃÖØÆô²ßÂÔ£¬È·±£¹Ø¼ü·þÎñ¼´Ê¹ÔÚÒì³£Çé¿öÏÂÒ²ÄÜ¿ìËÙ»Ö¸´
- ʹÓõÚÈý·½¹¤¾ß£ºÊг¡ÉÏ´æÔÚ¶àÖÖϵͳ¼à¿ØºÍ×Ô¶¯»¯ÔËά¹¤¾ß£¬ÈçNagios¡¢Zabbix¡¢AnsibleµÈ£¬ËüÃÇÄܹ»ÊµÊ±¼à¿Ø½ø³Ì״̬£¬²¢¸ù¾ÝÔ¤Éè¹æÔò×Ô¶¯Ö´ÐÐÇåÀí²Ù×÷
3. ÓÅ»¯¸¸½ø³ÌÉè¼Æ - ÕýÈ·´¦Àí×Ó½ø³ÌÖÕÖ¹£º±à³Ìʱ£¬È·±£¸¸½ø³ÌÄܹ»ÕýÈ·²¶»ñ×Ó½ø³ÌµÄÖÕÖ¹Ðźţ¬²¢¼°Ê±µ÷ÓÃ`wait()`»ò`waitpid()`À´»ØÊÕ×ÊÔ´
- ʹÓýø³Ì×飺¶ÔÓÚÐèҪͬʱ¹ÜÀí¶à¸ö×Ó½ø³ÌµÄÇé¿ö£¬¿ÉÒÔ¿¼Âǽ«ËüÃÇ×éÖ¯³É½ø³Ì×飬ͨ¹ý×éÐźÅÀ´Í³Ò»´¦Àí