systemctl Не удалось проанализировать режим уничтожения, игнорируя смешанные

На CentOS 7 я хотел проверить статус nginx оказание услуг:

# systemctl status nginx -l
nginx.service - The nginx HTTP and reverse proxy server
   Loaded: loaded (/usr/lib/systemd/system/nginx.service; disabled)
   Active: inactive (dead)

Jun 30 03:40:08 dev01 systemd[1]: [/usr/lib/systemd/system/nginx.service:13]
Failed to parse kill mode, ignoring mixed

Итак, я включил его: # systemctl enable nginx и проверил это снова:

# systemctl status nginx -l
nginx.service - The nginx HTTP and reverse proxy server
   Loaded: loaded (/usr/lib/systemd/system/nginx.service; enabled)
   Active: inactive (dead)

Jun 30 03:40:08 dev01 systemd[1]: [/usr/lib/systemd/system/nginx.service:13]
Failed to parse kill mode, ignoring mixed

Jun 30 03:40:21 dev01 systemd[1]: [/usr/lib/systemd/system/nginx.service:13]
Failed to parse kill mode, ignoring mixed

Что это за ошибка? И как же каждый раз, когда я делаю: # systemctl enable nginx, status добавляет еще одну копию ошибки внизу. Я сделал enable как 4 или 5 раз подряд, а затем status показывает, как 5 из этих ошибок. О чем эта ошибка?

Кроме того, когда я, наконец, start служба, все эти ошибки исчезают из status,

2 ответа

Решение

systemd записывает все сообщения (запуск / остановка) в /var/log/message, используя syslog, строка ошибок, которую вы видите, в основном все совпадающие строки для "nginx" с опцией tail. Это что-то =~ grep nginx | tail который будет отображать последние 10 строк /var/log/message для "nginx" grep. В основном systemctl отображает последние 10 строк из журнала, чтобы помочь пользователю определить проблему.

    [root@puppetmaster ~]# grep nginx /var/log/messages| tail
    Jul  1 05:59:50 localhost systemd: [/usr/lib/systemd/system/nginx.service:13] Failed to parse kill mode, ignoring: mixed
    Jul  1 05:59:57 localhost systemd: [/usr/lib/systemd/system/nginx.service:13] Failed to parse kill mode, ignoring: mixed
    Jul  1 06:05:35 localhost systemd: [/usr/lib/systemd/system/nginx.service:13] Failed to parse kill mode, ignoring: mixed
    Jul  1 06:23:30 localhost systemd: [/usr/lib/systemd/system/nginx.service:13] Failed to parse kill mode, ignoring: mixed
    Jul  1 06:23:34 localhost systemd: [/usr/lib/systemd/system/nginx.service:13] Failed to parse kill mode, ignoring: mixed
    Jul  1 06:23:46 localhost systemd: [/usr/lib/systemd/system/nginx.service:13] Failed to parse kill mode, ignoring: mixed
    Jul  1 06:27:07 localhost systemd: [/usr/lib/systemd/system/nginx.service:13] Failed to parse kill mode, ignoring: mixed
    Jul  1 06:27:19 localhost systemd: [/usr/lib/systemd/system/nginx.service:13] Failed to parse kill mode, ignoring: mixed
    Jul  1 06:27:24 localhost systemd: [/usr/lib/systemd/system/nginx.service:13] Failed to parse kill mode, ignoring: mixed
    Jul  1 06:27:28 localhost systemd: [/usr/lib/systemd/system/nginx.service:13] Failed to parse kill mode, ignoring: mixed

Относительно части о "Не удалось разобрать режим уничтожения, игнорируя смешанный". CentOS 7 не поддерживает этот режим. Я не уверен, когда он был добавлен в systemd, но в CentOS 7 я использую "KillMode=process". Причина, по которой я использую процесс вместо значения по умолчанию control-group, заключается в том, что мой демон создает дочерние процессы, которые я наблюдаю и контролирую, и им не нравится, когда systemd убивает их при остановке основного демона.

Смотрите "man systemd.kill" для получения дополнительной информации.

KillMode = mixed поддерживается в системе Fedora 21, с которой я тестирую.

Другие вопросы по тегам