“ <service_name> ตายแล้ว แต่ล็อคถูกต้อง” หมายความว่าอะไร


38

ฉันพยายามที่จะเรียกใช้ memcached บนกล่อง CentOS และมันจะทำงานสักครู่ แต่ก็จบลงด้วยสถานะนี้:

memcached dead แต่ subsys ถูกล็อค

netstat แสดงสิ่งนี้:

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

ps แสดงสิ่งนี้:

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

ใครรู้ว่านั่นหมายถึงอะไร?

คำตอบ:


61

นี่หมายความว่าบริการกำลังทำงานในครั้งเดียว แต่เกิดข้อผิดพลาด

เมื่อคุณเริ่มบริการจะสร้างไฟล์ "ล็อค" เพื่อระบุว่าบริการกำลังทำงานอยู่ สิ่งนี้จะช่วยหลีกเลี่ยงการบริการหลายครั้ง เมื่อคุณหยุดบริการไฟล์ล็อคนี้จะถูกลบออก

เมื่อบริการที่ทำงานขัดข้องไฟล์ล็อคจะมีอยู่ แต่กระบวนการไม่มีอยู่อีกต่อไป ดังนั้นข้อความ

มองไปที่สองพื้นที่และ/var/run/*.pid /var/lock/subsys/*สิ่งเหล่านี้คาดว่าจะเห็นด้วยกัน นั่นคือหากไฟล์ lock (emtpy) /var/lock/subsys/crondมีอยู่แล้วบรรทัดแรกของไฟล์/var/run/crond.pidนั้นคาดว่าจะมี PID ของกระบวนการที่ทำงานอยู่สำหรับบริการนี้ หากไม่มีกระบวนการดังกล่าวทำงานอยู่แสดงว่ามีบางอย่างผิดปกติ หากกระบวนการแน่นอนทำงาน (ตามที่คุณดู) แต่ก็ไม่ได้ว่า PID แล้วสิ่งที่อาจจะเกิดความสับสน


มันยังคงทำงานอยู่หรือไม่หากมันเชื่อมต่อกับพอร์ตและแสดงรายการใน ps
Nick Brosnahan

ฉันขยายคำตอบของฉัน ทำ "ls / var / lock / subsys / memcached" (ฉันถือว่าไฟล์นี้มีอยู่) จากนั้น "cat /var/run/memcached.pid" และดูที่บรรทัดแรก บรรทัดแรกคือ PID ที่คุณควรคาดว่าจะเห็นสำหรับ memcached
Eddie

ขออภัยฉันคิดว่าเกิดอะไรขึ้น มันยังคงทำงานอยู่ ฉันเปิดใช้โดยใช้ "sudo / sbin / service memcached start" แต่เมื่อมองย้อนกลับไปในประวัติศาสตร์ของฉันฉันได้รับสถานะโดยใช้ "/ sbin / service memcached service" PEBCAK ทั้งหมดเป็นอย่างดี. ขอบคุณสำหรับความช่วยเหลือของคุณ.
Nick Brosnahan

5
อาและเรียกใช้สถานะที่ไม่เป็นรูทคุณอาจไม่มีสิทธิ์เข้าถึงเพื่ออ่าน /var/run/memcached.pid ดังนั้นคำสั่งจะถือว่าระบบย่อยนั้นตายเนื่องจากไม่สามารถหากระบวนการที่ถูกต้องได้
Eddie
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.