Введение
Неполадки, ошибки, баги и упавшие сервера — вот небольшой список потенциальных проблем для администраторов, работников по информационной безопасности и других IT—специалистов. Необходимо как можно быстрее решить возникшую проблему! Но с чего начать, где искать причину и как с ней бороться? Мы рассмотрим основную область потенциальных проблем: файловую систему, ядро, устройства, драйверы и т.д. Поскольку проблем возникает много, то и способы их решения у них свои. Процесс устранения неполадок можно разделить на два этапа: анализ и применение решения!
Первый этап: Анализ
Прежде всего, необходимо определить проблему и область в ОС. Сообщение об ошибке может выдать программа, утилита или служба. Например, система контроля доступа и управления учетными записями может вывести на экран такую ошибку:

У нас нет прав на файл, созданный root’ом, потому что у него атрибут 700. То есть root имеет rwx — права, а другие пользователи и группы не имеют! Для решения этой проблемы необходимо изменить атрибут нужного файла или каталога. Также система может не оповещать вас о происходящем внутри, потому что не прерывает процесс. ОС похожа на черный ящик с миллионами процессов внутри, и мы должны следить за ними, для этого у нас есть лог—файлы, которые могут помочь справиться с этой проблемой.
Внимание! Но каждая система, приложение, служба может иметь свой лог—утилиту или файл для поиска неисправностей, об этом необходимо помнить!
Давайте посмотрим на системный журнал, как именно выглядит сообщение о событиях:
journalctl | grep "login" | tail
Эта команда имеет несколько опций, приведем некоторые пояснения. Первая команда позволяет проверить журналы системы, вторая – найти текстовый шаблон в объеме данных, а третья — показать конец журнала. В результате мы имеем список действий о входе или попытках:

Забавно, но на сервере для целей эксперимента мы не установили открытый ключ, и вы видите причину ваших потенциальных проблем: машины с различными IP—адреса пытаются проникнуть на вашу. Поэтому установите доверенный открытый ключ. Также мы можем использовать это для проверки статуса одного из сервисов:
journalctl -xeu postgresql@15-main.service

По приведенным выше рекомендациям мы можем проверить журнал действий:

На экране выше мы видим файл Subject с проблемой Unit failed, проверьте строчку с тегом FATAL. В этом случае проблема в конфигурационных файлах, поэтому запуск устройства невозможен!
Второй этап: Решение
Если вы хотите проверить статус сервисов, то необходимо набрать:
systemctl list-units -t service -p important

Давайте устраним неполадки в работе службы postgresql, для этого зайдем в файл конфигурации и найдем ошибку в строке:

Удалите ее комбинацией клавиш Ctrl + K, затем сохраните и перезапустите службу:
systemctl restart postgresql@15-main.service
И в то же время нам необходимо проверить статус сервиса:
systemctl status postgresql@15-main.service

Для вашего случая может потребоваться другие шаги для решения, например, поиск по одному и тому же сообщению об ошибке в поисковой системе или в генеративных сервисах AI, таких как GPT. В этой статье мы рассматриваем инструменты мониторинга для решения ошибок.
Также если вы не можете найти причину проблемы, но ваше устройство работает медленно, вы можете установить Task Manager — atop:
apt install atop -y
Затем просто наберите atop и подождите всплывающего окна с основным запущенным процессом:
atop

В последнем столбце мы видим поле CPU с процентом использования процесса в текущий момент времени и, если видим высокую нагрузку, то убиваем процесс или приостанавливаем его:
kill -INT 332697
И вторая команда – завершает их:
kill -TERM 332697

Если CLI не возвращает сообщение с проблемой, значит оно выполнено — успешно!
Вывод
Решение ошибок и проблем в системе является обычной частью системного администрирования. В данном руководстве рассматриваются различные аспекты выявления и эффективного решения этих проблем.