Получение кода выхода отказавшей службы systemd

Сломанный контейнер на самом деле является вашим «рабочим контейнером», в образе мертвого -человека -ходячего :кэши его репозитория устарели, поэтому apt policyговорит вам нечто, что было правдой в прошлом, но больше нет. Если вы запустите в нем apt update, вы увидите ту же ситуацию, что и в своем «битом контейнере».

Если вам действительно нужен PHP 7.2, вам нужно установить соответствующий пакет вместо пакета libapache2-mod-php, который всегда будет устанавливать последнюю стабильную версию PHP. Установка libapache2-mod-php7.2должна решить вашу проблему.

1
26.05.2020, 13:33
1 ответ

systemctl statusесть то, что вы ищете:

$ systemctl status openproject-web-1.service
● openproject-web-1.service
   Loaded: loaded (/etc/systemd/system/openproject-web-1.service; enabled; vendor preset: enabled)
   Active: failed (Result: exit-code) since Mon 2020-05-25 08:17:17 CEST; 1 day 4h ago
  Process: 969 ExecStart=/usr/bin/openproject run web (code=exited, status=203/EXEC)
 Main PID: 969 (code=exited, status=203/EXEC)

Вы видите здесь под Main PID:у вас есть (code=exited, status=203/EXEC). 203 — это код выхода.

Коды выхода зависят от конкретного приложения, но существуют соглашения. 0 — успешный выход, 1 -255 — аварийный выход, 256+ — выход за пределы допустимого диапазона. Стандарт posix имеет несколько особых случаев. Но вы захотите посмотреть документацию приложения для чего-то большего, чем это.

Например,grep(1)говорит:

...the exit status is 0 if a line is selected, 1 if no lines were selected, and 2 if an error occurred

Как описано ниже в JdePB, systemd может сама устанавливать некоторые коды выхода в диапазоне от 200 до 242.В приведенном выше примере у нас есть код выхода 203, который означает, что фактическое выполнение не удалось (, возможно, файл не был найден или не был помечен как исполняемый ).

4
18.03.2021, 23:32

Теги

Похожие вопросы