Скорочення часу очікування відключення для "запущеної роботи зупинки"


18

У мене node.js і pm2 встановлені на Pi (Raspbian). PM2 був налаштований для запуску через pm2 startupі створені сценарії init. Іноді, коли я перезавантажуюсь, вимкнення висить на кілька хвилин на:

A stop job is running for LSB: PM2 init script (... / 5min)

Час від часу 1, на що я припускаю, що PM2 не вимикається належним чином і зависає цілих 5 хвилин.

У цій системі я точно знаю, якими програмами керує PM2, і мені дійсно все одно, чи правильно вони вимикаються.

Моє запитання: Як зменшити час очікування з 5 хвилин до, скажімо, 15 секунд? Де це налаштовано?

Я прочитав на форумі, що це був DefaultTimeoutStopSecключ у /etc/systemd/system.conf , тому я спробував встановити його на "15s", але це не мало ефекту. Я спробував те ж саме в /etc/systemd/user.conf теж, але ніяких змін. Час очікування все ще встановлено на 5 хвилин.


1 Я насправді точно знаю, що викликає це, але деталі не важливі, і ефект неминучий.


1
Якщо є stopсценарій (за замовчуванням) , ви можете переписати його для виконання forcestopабо навіть вбити pm2замість витонченого відключення.
Тигр

@Tigger Я фактично дійшов подібного висновку. З відчаю я щойно змусив stopсценарій init pm2 взагалі нічого не робити, і нехай він загине природно при відключенні. Це жахливе рішення для загального використання, але в цій конкретній системі це чудово. Я все ще хочу знати, як змінити 5-хвилинний тайм-аут.
Джейсон C

Відповіді:


8

Як зменшити час очікування з 5 хвилин до, скажімо, 15 секунд?

Ви відновлюєте systemd з джерела, виправляючи прострочений проміжок часуsystemv-sysv-generator з TimeoutSec=5minтого, що вам потрібно. Або ви запитаєте системних людей про ручку управління десь у заголовках Fedora / SUSE або LSB.

Або з боку захоплення ви відмовляєтесь від використання цього rcсценарію, який у вас є, і пишете системний сервісний блок для своєї служби, час очікування якого ви можете встановити за допомогою явного TimeoutSec=налаштування, встановленого разом із файлом налаштувань, що випадає /etc/systemd/system/pm2.service.d/timeout.conf.

Враховуючи це , це , це , це , це та інші, перше правило для переходу на systemd також застосовується тут.

Подальше читання


17

/etc/systemd/system.conf має лінію

#DefaultTimeoutStopSec=90s

які можна коментувати і змінювати


Я згадував, що у своєму дописі і що зміна цього не впливає.
Джейсон C

налаштування 45-х в Arch Linux робить вимкнення швидко на nvmeдиску - для дійсно швидких відключень використовуйте Alpine Linux (ні systemd)
Stuart Cardall
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.