it-swarm-tr.com

"Hizmet_adı> öldü, ancak alt sistem kilitli" ne anlama geliyor?

Bir centos kutusu memcached çalıştırmak çalışıyorum ve bir süre çalışır, ama sonra bu durumda sona erer:

memcached ölü ama subsys kilitli

netstat bunu gösterir:

tcp        0      0 :::11211                    :::*                        LISTEN      
udp        0      0 0.0.0.0:11211               0.0.0.0:*                               

ps bunu gösterir:

nobody   21983  0.0  1.8  60272 19912 ?        Ssl  16:46   0:00 memcached -d -p 11211 -u nobody -c 1024 -m 64

Bunun ne anlama geldiğini bilen var mı?

39
Nick Brosnahan

Bu, hizmetin bir seferde çalıştığı, ancak çöktüğü anlamına gelir.

Bir hizmeti başlattığınızda, hizmetin çalıştığını göstermek için bir "kilit" dosyası oluşturur. Bu, hizmetin birden çok örneğini önlemeye yardımcı olur. Bir hizmeti durdurduğunuzda, bu kilit dosyası kaldırılır.

Çalışan bir hizmet çöktüğünde, kilit dosyası vardır ancak işlem artık mevcut olmaz. Böylece, mesaj.

İki alana bakın /var/run/*.pid ve /var/lock/subsys/*. Bunların birbirleriyle anlaşmaları bekleniyor. Yani, (emtpy dosyası) lockfile /var/lock/subsys/crond var, sonra _ dosyasının ilk satırı /var/run/crond.pid'nin bu hizmet için çalışan işlemin PID'sini içermesi bekleniyor. Böyle bir süreç çalışmıyorsa, bir şeyler yanlıştır. Bir süreç gerçekten çalışıyorsa (gördüğünüz gibi) ancak that PID değilse, muhtemelen bir şeyler karıştırılır.

62
Eddie