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

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

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

Гайд: Диагностика сбоев в emergency mode: работа с journalctl -xb и восстановление fstab

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

Причины падения systemd в аварийные режимы Emergency и Rescue Mode

В процессе инициализации операционной системы systemd запускает таргет local-fs.target, который выполняет параллельную проверку целостности (fsck) и монтирование всех блочных устройств, описанных в статическом файле конфигурации /etc/fstab. Если критический раздел (/, /boot, /home, /var) не может быть смонтирован из-за неверного UUID, повреждения суперблока файловой системы или недоступности сетевого NFS/iSCSI хранилища, systemd прерывает обычный граф загрузки и переводит сервер в изолированный режим:

«You are in emergency mode. After logging in, type "journalctl -xb" to view system logs, "systemctl reboot" to reboot, or "exit" to continue bootup. Cannot open access to console, the root account is locked.»

Бизнес-риски

Полная блокировка старта продуктовых серверов после планового ребута, зависание удаленных необслуживаемых серверов в дата-центрах.

Сравнение режимов Emergency Mode и Rescue Mode

ПараметрRescue Mode (Single-User)Emergency Mode
Целевой таргет systemdrescue.targetemergency.target
Состояние файловых системСмонтированы все базовые локальные файловые системы.Смонтирован ТОЛЬКО корневой раздел (/) в режиме Read-Only.
Доступные службыБазовые службы systemd, сокеты, журналы.Минимальный shell без фоновых демонов.

Регламент диагностики и восстановления системы в Emergency Mode

Сценарий 1: Перевод корневой системы в режим записи (Read-Write)

По умолчанию в emergency mode корень смонтирован в ro, что запрещает сохранение изменений в конфигурационных файлах:

# 1. Перемонтирование корневой файловой системы на запись:
mount -o remount,rw /

# 2. Проверка возможности записи:
touch /test_rw && rm /test_rw

Сценарий 2: Поиск виновника сбоя через journalctl -xb

Фильтрация логов текущей неудавшейся загрузки по уровням ошибок:

# 1. Поиск критических ошибок монтирования и дисковых сбоев:
journalctl -xb -p 3

# 2. Поиск строк с ошибками монтирования конкретных таргетов:
journalctl -xb | grep -E "Failed to mount|dependency failed|Timed out"

Сценарий 3: Исправление файла конфигурации /etc/fstab

Чаще всего сбой вызван удаленным сетевым диском, сменившимся UUID или опечаткой в опциях монтирования:

# 1. Вывод актуальных UUID всех подключенных блочных устройств:
blkid

# 2. Редактирование fstab:
nano /etc/fstab

# Рекомендации по безопасной настройке fstab:
# Для некритичных и внешних дисков ВСЕГДА добавляйте опции nofail и x-systemd.device-timeout=5s:
# ПРИМЕР ПРАВИЛЬНОЙ СТРОКИ:
# UUID=4a21-9bc2  /mnt/data  ext4  defaults,nofail,x-systemd.device-timeout=5s  0  2

# 3. Перезагрузка демона systemd для перегенерации mount-юнитов:
systemctl daemon-reload

# 4. Проверка монтирования всех точек без перезапуска:
mount -a

# 5. Перезагрузка сервера в штатный режим:
systemctl reboot

Типовые ошибки администраторов

  • Монтирование сетевых NFS/CIFS шаров без опции _netdev: Если в fstab для сетевого диска не указана опция _netdev, systemd попытается смонтировать его ДО инициализации сетевого стека, что мгновенно вызовет аварийный стоп в Emergency Mode.
  • Блокировка root-пользователя: Если в Ubuntu аккаунт root заблокирован (нет пароля), вход в Emergency Mode невозможен. В GRUB добавьте параметр init=/bin/bash для сброса пароля или исправления fstab.
Удаленный сервер завис в Emergency Mode и не отвечает по сети?
Инженеры ITSTM настроят Out-of-Band доступ через KVM-консоль, исправят сбойные системные юниты и оптимизируют тайминги монтирования.
Практический опыт инженера: При переносе виртуальных машин или клонировании дисков никогда не используйте имена устройств вроде /dev/sda1 в /etc/fstab, так как при добавлении нового контроллера порядок именования дисков в ядре Linux может измениться. Всегда используйте постоянные идентификаторы UUID=... или LABEL=....

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

Что делает опция nofail в /etc/fstab?

Опция nofail указывает systemd продолжать загрузку операционной системы в штатном режиме, даже если данное конкретное устройство отсутствует или повреждено.

Как загрузиться в обход fstab при помощи systemd mask?

Можно замаскировать сбойный таргет монтирования: systemctl mask mnt-data.mount, после чего система успешно завершит загрузку.

Почему fsck завершается с кодом ошибки 4 в emergency mode?

Код ошибки fsck 4 означает: 'Файловая система содержит неисправленные ошибки, требуется ручной запуск fsck'. Запустите e2fsck -y /dev/sdX.

Как выйти из emergency mode без перезагрузки?

После устранения причины выполните: systemctl default или нажмите Ctrl+D.