С чего начать поиск неисправности сервера на Linux

Если сервер дал сбой, то необходимо найти неисправность и устранить её. Часто все проблемы, которые возникают с сервером заключаются не в ядре системе, а в работающих сервисах. Поэтому первым делом стоит проверить именно их состояние.

systemctl

Для проверки состояния сервисов на большинстве дистрибутивов linux можно использовать менеджер системных служб под названием "systemd". Для обращения к нему используется несколько команд. Главная из них:
systemctl
Если выполнить эту команду, то будет выведен список всех служб и их статусы. Но для получения общего состояния системы стоит использовать слово "status":
systemctl status
Если в системе нет сбоев, то результатом выполнения этой команде будет отчёт, в первых строках которого можно увидеть надпись State: running. Если какая-либо служба завершилась аварийно, то статус будет "деградирован": State: degraded. В таком случае первым делом надо определить, какой же именно юнит сломался. Для этого выполните команду:
systemctl --failed
В консоли будет распечатан список из всех юнитов, которые завершились аварийно:
  UNIT                           LOAD   ACTIVE SUB    DESCRIPTION
● systemd-sysctl.service         loaded failed failed Apply Kernel Variables
● systemd-tmpfiles-setup.service loaded failed failed Create Files
Теперь необходимо разобраться с каждым неработающим юнитом отдельно. Для этого испольузется команда:
systemctl status название_сервиса
Проверим так первый нерабочий сервис из нашего списка:
systemctl status systemd-sysctl
Результатом выполнения этой команды будет описание сервиса, его стартовых параметров и некоторые строки из системного журнала.
Записывать полное название юнита не обязательно. Systemctl предполагает, что в конце названий должен быть ".service".
Именно по строкам из системного журнала чаще всего получается определить неисправность. Но порой они бывают слишком длинными, поэтому обрезаются. Чтобы такого не происходило, достаточно добавить ключ "-l" после слова "status":
systemctl status -l systemd-sysctl

journalctl

Если по этой информации не стала ясна причина выключения юнита, то стоит теперь воспользоваться системным журналом. Для этого необходимо ввести команду:
journalctl -b -u название_сервиса
Включ "-b" указывает на то, что надо отобразить только те записи журнала, которые были сделаны с момента последней загрузки. Ключ "-u" фильтрует список, чтобы в него попали сообщения только от нашего нерабочего сервиса "systemd-sysctl". В нашем случае команда получится такая:
journalctl -b -u systemd-sysctl
название_сервиса Таким образом можно получить информацию для начала поиска проблемы с сервером.
MouseDC.ru - хостинг, виртуальный хостинг, покупка доменов, проверка доменов, WHOIS, курсы создания сайтов, вебинары по созданию, курсы разработки сайтов, доработка сайтов, сопровождение сайтов, разработка сайтов, техподдержка сайтов
Cмотрите другие статьи:
Была ли статья полезной?
Была ли эта статья полезна? Есть вопрос?
хостинг для сайтов
Закажите недорогой хостинг Заказать

всего от 290 руб

⇡ наверх