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ı?
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.