Що означає "<ім’я_сервісу> мертвого, але підблокований"?


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 file) /var/lock/subsys/crondіснує, тоді, /var/run/crond.pidяк очікується, перший рядок файлу містить PID процесу, що працює для цієї послуги. Якщо такий процес не запущений, значить, щось не так. Якщо процес дійсно працює (як ви бачите), але це не такий PID, то щось, мабуть, плутається.


Чи все ще не працює, якщо він прив’язаний до порту та вказаний у ps?
Нік Броснахан

Я продовжив свою відповідь. Зробіть "ls / var / lock / subsys / memcached" (я припускаю, що цей файл існує), а потім "cat /var/run/memcached.pid" і подивіться перший рядок. Перший рядок - це ПІД, який слід очікувати на запам’ятовування.
Едді

Вибачте, я зрозумів, що відбувається. Це все ще бігало. Я запустив його за допомогою "sudo / sbin / service memcached start", але озирнувшись до своєї історії, я отримав статус, використовуючи "/ sbin / service memcached service". ПЕБКАК. Все добре. Спасибі за вашу допомогу.
Нік Броснахан

5
Так, і запускаючи статус не як root, ви, можливо, не мали прочитати доступ до /var/run/memcached.pid, таким чином, команда припустила, що підсистема мертва, оскільки вона не могла знайти правильний процес.
Едді
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.