Центр Диагностики & База Системных Ошибок

Решения для Windows Server, Active Directory, 1С, СУБД, Linux, Cisco, MikroTik и IP-телефонии.

⚠️ Важная информация Все материалы, инструкции, команды и скрипты предоставлены исключительно в ознакомительных целях. Их применение может повлиять на работу операционной системы, баз данных и сетевого оборудования. Перед выполнением действий обязательно создайте резервную копию. При отсутствии необходимой квалификации обратитесь к ИТ-специалистам.
Failed to load SELinux policy, freezing Linux / DevOps

Failed to load SELinux policy, freezing — Сбой инициализации SELinux

Обновлено: 18.08.2026  ·  Официальная база знаний

Архитектура ошибки и симптомы сбоя

Критический сбой ранней загрузки «Failed to load SELinux policy, freezing» (или «systemd[1]: Failed to load SELinux policy») возникает на первом этапе инициализации системы диспетчером systemd. Ошибка означает, что systemd не смог прочитать, загрузить или скомпилировать бинарный файл политики безопасности (например, /etc/selinux/targeted/policy/policy.31) в ядро Linux. В соответствии со стандартом безопасности при повреждении политик система принудительно замораживает (freeze) выполнение любых дальнейших процессов.

Диагностическая таблица параметров сбоя

ПараметрЗначениеИнженерный смысл сбоя
SELinux Policy File/etc/selinux/targeted/policy/Скомпилированная база правил мандатного контроля доступа (MAC).
Freezing ActionKernel Freeze / HangЗащитный механизм ядра: предотвращение запуска процессов в небезопасном режиме.
Root CauseCorrupted Policy / Bad UpdateПовреждение файлов политик после прерванного обновления selinux-policy-targeted.

Пошаговое дерево решений и сценарии траблшутинга

Сценарий 1: Временное отключение SELinux через меню загрузчика GRUB

  1. Перезагрузите сервер и в меню GRUB нажмите клавишу e.
  2. В конце строки параметров ядра (начинается с linux) добавьте параметры: selinux=0 или enforcing=0.
  3. Нажмите Ctrl+X для успешной загрузки операционной системы в обход блокировки SELinux.

Сценарий 2: Принудительная перемаркировка файловой системы (Autorelabel)

# Создайте флаг автоматической перемаркировки контекстов безопасности при старте:
sudo touch /.autorelabel

# Проверьте статус режима SELinux в конфигурационном файле:
cat /etc/selinux/config
# Убедитесь, что указано: SELINUX=permissive (на время восстановления)

Сценарий 3: Переустановка поврежденного пакета политик SELinux

# Для RHEL / CentOS / Rocky Linux / AlmaLinux:
sudo dnf reinstall -y selinux-policy-targeted selinux-policy

# Принудительная пересборка модулей политик:
sudo semodule -B

# Возврат режима enforcing в /etc/selinux/config:
# SELINUX=enforcing

sudo reboot
RHEL/CentOS сервер заблокирован из-за сбоя политик безопасности SELinux?
ITSTM восстановит бинарные политики SELinux, настроит кастомные модули te/pp и обеспечит максимальный уровень защиты хоста.
Практический опыт инженера: Никогда не отключайте SELinux установкой SELINUX=disabled на серверах с требованиями PCI-DSS/ГОСТ. Всегда переводите в режим SELINUX=permissive для генерации модулей правил утилитой audit2allow -a -M my_fix.

Частые вопросы (FAQ)

В чем разница между selinux=0 и enforcing=0 в параметрах GRUB?

selinux=0 полностью выгружает подсистему SELinux из ядра. enforcing=0 (Permissive mode) загружает подсистему и политики, но переводит их в режим аудита: доступ не блокируется, а нарушения лишь записываются в /var/log/audit/audit.log.

Почему после добавления selinux=0 система загрузилась, но файлы не имеют меток?

В режиме selinux=0 ядро не назначает xattr-метки новым файлам. При обратном включении SELinux обязательно создайте файл /.autorelabel для восстановления меток всей файловой системы.

Как проверить текущий статус SELinux из командной строки?

Выполните команду sestatus или getenforce.

Где сохраняются отчеты об ошибках доступа SELinux?

В файле /var/log/audit/audit.log (ищите тип событий type=AVC) или через утилиту ausearch -m avc -ts recent.