"<Service_name> मर चुका है, लेकिन लॉक हो गया है" इसका क्या मतलब है?


38

मैं सेंटोस बॉक्स पर मेमेकैच्ड चलाने की कोशिश कर रहा हूं और यह थोड़ी देर के लिए चलता है, लेकिन फिर इस अवस्था में समाप्त होता है:

मृत मृत लेकिन सबसिडी बंद

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/*। इनसे एक दूसरे के सहमत होने की उम्मीद की जाती है। यही है, अगर (emtpy फ़ाइल) लॉकफाइल /var/lock/subsys/crondमौजूद है, तो फ़ाइल की पहली पंक्ति में /var/run/crond.pidइस सेवा के लिए चल रही प्रक्रिया के PID को शामिल करने की उम्मीद है। अगर ऐसी कोई प्रक्रिया नहीं चल रही है, तो कुछ गलत है। यदि कोई प्रक्रिया वास्तव में चल रही है (जैसा कि आप देखते हैं) लेकिन ऐसा नहीं है कि पीआईडी, तो शायद कुछ उलझन में है।


क्या यह अभी भी चल रहा है अगर यह एक बंदरगाह से बंधा हुआ है और ps में सूचीबद्ध है?
निक ब्रोसन

मैंने अपना उत्तर बढ़ाया। "Ls / var / lock / subsys / memcached" (मुझे लगता है कि यह फ़ाइल मौजूद है) और फिर "cat /var/run/memcached.pid" और पहली पंक्ति को देखें। पहली पंक्ति वह पीआईडी ​​है जिसे आपको मेम्केड के लिए देखने की उम्मीद करनी चाहिए।
एडी

क्षमा करें, मुझे पता चला कि क्या चल रहा था। यह अभी भी चल रहा था। मैंने इसे "sudo / sbin / service memcached start" का उपयोग करके लॉन्च किया था, लेकिन अपने इतिहास में पीछे मुड़कर, मुझे "/ sbin / सेवा मेमकाटेड सेवा" का उपयोग करके स्थिति मिली। PEBCAK। सब ठीक हैं। आपकी सहायता के लिए धन्यवाद।
निक ब्रोसहन

5
आह, और स्थिति को रूट के रूप में नहीं चलाने पर, आपने /var/run/memcached.pid तक पहुंच नहीं पढ़ी होगी, इस प्रकार, कमांड ने माना कि सबसिस्टम मृत था क्योंकि यह सही प्रक्रिया का पता नहीं लगा सका।
एडी
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.