Чи не запускається Linux з помилкою Welcome to emergency mode

У своїй роботі мені доводилося неодноразово стикатися з проблемою завантаження Linux в аварійному режимі з помилкою Welcome to emergency mode. Найчастіше проблема виникає при аварійному відключенні харчування на сервері, при краше системи або інших подібних впливах. У 90% випадків це помилка пов'язана з пошкодженням файлової системи Linux, яку можна вирішити.

У даній статті ми розглянемо варіанти вирішення подібної проблеми, їх може бути кілька.

зміст:

  • Виправляємо помилки файлової системи за допомогою LiveCD
  • Проблема з монтування в fstab
  • Linux встановлений з USB флешки
  • Dualboot конфігурація Windows і Linux

Виправляємо помилки файлової системи за допомогою LiveCD

Розглянемо приклад, коли у вас був якийсь збій на сервері, наприклад, аварійне відключення живлення і при завантаженні Linux сервера в remote console або vnc, ви бачите таку картину:

Welcome to emergency mode! After logging in, type "journalctl -xb" to view system logs, "systemctl reboot" to reboot, "systemctl default" or ^ D to try again boot into default mode. Give root password for maintained (or press Control-D to continue).

Аварійний режим emergency mode забезпечує мінімально можливу середу Linux для відновлення система, якщо ОС не може увійти в режим відновлення (Rescue mode). В аварійному режимі система монтує кореневу файлову систему на для читання. Інші локальні файлові системи не монтуються, мережеві інтерфейси не піднімаються.

Якщо натиснути клавіші Control + D, то починається завантаження системи, але в кінцевому підсумку все повертається до того ж Emergency mode:

Щоб вирішити дану проблему, вам потрібно завантажитися на сервері з LiveCD або LiveUSB і використовувати утиліту SystemRescueCd. Я завантажив образ з утилітою systemrescuecd:

Тепер запустіть перевірку файлової системи сервера з виправленням всіх знайдених помилок за допомогою команди:

# Fsck -y / dev / sda1 - де sda1 ваш розділ диска.

Перевірку потрібно виконати з усіма розділами, після чого виконати рестарт системи і в більшості випадків, це вирішує вашу проблему.

Проблема з монтування в fstab

Другий варіант, який може статися, це пошкодження або некоректна конфігурація файлу fstab. У моєму випадку, при завантаженні з systemrescuecd і перевірки системи, проблем не було виявлено і це не допомогло. Але при відкритті fstab я побачив, в конфігурації немає розділів диска для монтування, а є тільки запис про завантажувальному диску:

Щоб вирішити питання, потрібно отримати UUID ваших дисків через утиліту blkid:

Після цього потрібно всі дані в fstab, зберегти і перезапустити сервер, якщо все зробили правильно, то сервер запуститися в звичайному режимі.

Linux встановлений з USB флешки

Так само в роботі були моменти, коли установкуLinux виробляли з установочного флеш-накопичувача і після рестарту сервера, ОС завантажувалася з помилкою "Welcome to emergency mode!". при перевірці fstab було виявлено, що цей флеш-накопичувач був прописаний в fstab як робочий розділ. В такому випадку допомагає видалення рядка з монтуванням і перезапуск системи. Як і в першому випадку, вам потрібно завантажитися з systemrescuecd і відкрити fstab. Швидше за все ви відразу побачите, що там є подібний розділ - / mnt / usb1:

Просто видаліть цей рядок, якщо ви тепер не використовуєте флеш-накопичувач.

Dualboot конфігурація Windows і Linux

Ще один з варіантів проблеми, помічений користувачами - це паралельне використання Windows і СentOS на одному комп'ютері. При завантаженні часто виникає помилка emergency mode при монтуванні розділів Windows. Звичайне рішення проблеми полягає у відключенні швидкого запуску Windows.

Щоб відключити швидкий запуск, перейдіть в меню Електроживлення -> Системні параметри і вибрати пункт «Зміна параметрів, які зараз недоступні».

Зніміть галочку в блоці «Включити швидкий запуск».

Збережіть зміни і запустіть ваш сервер. Після виконаних рекомендацій, CentOS повинен запуститися.

Якщо ви використовуєте LVM розділи, дана помилка так само може з'явитися, в цілому рішення проблеми схоже із звичайним розділом, потрібно перевірити fstab і виправити помилки, допущені в ньому.