Не запускается Linux с ошибкой Welcome to emergency mode
17.01.2020
VyacheslavK
CentOS, Linux
комментария 4
В своей работе мне приходилось неоднократно сталкиваться с проблемой загрузки Linux в аварийном режиме с ошибкой Welcome to emergency mode. Чаще всего проблема возникает при аварийном отключении питания на сервере, при краше системы или других подобных воздействиях. В 90% случаев это ошибка связана с повреждением файловой системы Linux, которую можно решить.
В данной статье мы рассмотрим варианты решения подобной проблемы, их может быть несколько.
Исправляем ошибки файловой системы с помощью LiveCD
Рассмотрим пример, когда у вас был какой-то сбой на сервере, например, аварийное отключение питания и при загрузке Linux сервера в remote console или vnc, вы видите следующую картину:
Если нажать сочетание клавиш 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 и исправить ошибки, допущенные в нем.
Как загрузиться в режим восстановления или аварийный режим в Ubuntu 18.04
В качестве примера будет использована система Ubuntu 18.04 LTS, но руководство актуально для любой системы, использующей Systemd как подсистему инициализации. Так же мы рассмотрим команды по восстановлению системы Ubuntu без ее переустановки.
Что такое режим восстановления в системах Linux?
Режим восстановления эквивалентен однопользовательскому режиму в дистрибутивах Linux, которые используют демон SysV в качестве диспетчера служб по умолчанию. В режиме восстановления все локальные файловые системы будут примонтированы, но только некоторые важные службы будут запущены. Например, сетевые сервисы не будут запущены. Режим восстановления Linux полезен в ситуациях, когда система не может нормально загрузиться. Кроме того, в данном режиме мы можем выполнить некоторые важные операции по восстановлению, например, такие как сброс root пароля.
Что такое аварийный режим?
В отличие от режима восстановления, в аварийном режиме не монтируются точки монтирования файловых систем, службы и сокеты не будут запущены. Аварийный режим подходит для отладки.
Загрузка в режим восстановления в Ubuntu 18.04 LTS
Запустите установленную систему Ubuntu. Когда появится меню Grub, выберите первую запись и нажмите e для редактирования.
Если у вас не отобразилось меню Grub, то нужно нажать клавишу ESC сразу после исчезновения логотипа BIOS.
Найдите строку, начинающуюся со слова «linux», удалите значение «$vt_handoff» и в конце этой строки введите следующее значение (Чтобы быстрее достичь конца строки, просто нажмите CTRL + e или используйте клавишу END или стрелки LEFT / RIGHT на клавиатуре):
После того, как вы добавили вышеприведенное значение, нажмите сочетание клавиш CTRL + x или F10, чтобы загрузить систему в режим восстановления. Через несколько секунд вы попадете в режим восстановления (однопользовательский режим) в качестве пользователя root. Нажмите Enter.
Затем введите следующую команду для монтирования файловой системы root (/) в режим чтения / записи:
Загрузка в аварийный режим
Загрузка операционной системы Linux в аварийный режим аналогична описанному выше методу. Все, что вам нужно сделать, это заменить «systemd.unit= rescue.target» на «systemd.unit = emergency.target» при редактировании меню Grub.
После того, как вы добавили «systemd.unit=emergency.target», нажмите Ctrl + x или F10, чтобы продолжить загрузку в аварийный режим.
Вы можете подключить корневую файловую систему в режим чтения / записи с помощью команды:
Переключение между режимами восстановления и аварийный режимом и наоборот
Если вы загрузились в режим восстановления, то из него же можно переключиться в аварийный режим с помощью следующей команды:
Аналогично, чтобы переключиться с аварийного режима в режим восстановления, введите команду:
Режим восстановления Recovery mode в Linux
Еще одним режимом, которым можно воспользоваться для восстановления системы, является режим Recovery mode. Примечателен он тем, что содержит предустановленные утилиты для восстановления.
Для запуска режима восстановления необходимо загрузиться в меню Grub, выбрать Дополнительные параметры.
Затем из появившегося списка выбрать первое (верхнее) ядро с надписью (recovery mode).
Как вы можете видеть на рисунке ниже, как только система загрузится в режим восстановления, вам будет показано меню инструментов, которые решают различные общие проблемы с загрузкой системы. Стоит попробовать каждый из них, который как вам кажется, может решить вашу проблему.
Clean, например, удалит неиспользуемые файлы, если вы подозреваете, что проблема связана с полным диском. dpkg попытается исправить любые сломанные пакеты программного обеспечения. (Средство «dpkg»может потребовать, чтобы вы сначала включили сеть (network). Опция root запустит командную строку от имени суперпользователя.
Теперь вы знаете, что такое режим восстановления, аварийный режим и Recovery mode, а также как загрузиться в эти режимы в Ubuntu 18.04. Как я уже упоминал, приведенные здесь шаги будут работать во многих последних версиях Linux, в которых используется Systemd.
Как восстановить операционную систему Ubuntu без переустановки
Рассмотрим популярные и действенные методы восстановления операционной системы Ubuntu. Если вы столкнулись с тем, что ваша система не запускается после обновления, установки драйверов или по каким-нибудь другим причинам, то вам стоит воспользоваться данной инструкцией.
На экране входа в систему воспользуйтесь комбинацией клавиш CTRL + ALT + F1 для переключения в виртуальную консоль tty1, возможно вам придется переключится на другую виртуальную консоль, в таком случае воспользуйтесь этой же комбинацией клавиш, но с F2 или F3 и т.д. И затем выполните следующие команды:
Если причиной того, что система не загружается стала установка видеорайвера Nvidia, то для решения проблемы его нужно удалить:
И обновить систему:
И перезагрузить систему:
Так же может помочь переустановка рабочего окружения. Для Ubuntu это будет следующая команда (не влияет на пользовательские данные):
Рекомендую периодически делать резервные копии системы и домашнего каталога пользователя, соответствующими инструментами. Например, для резервного копирования в среде Linux можно воспользоваться утилитой QT5-FSArchiver.
How To Boot Into Rescue Mode Or Emergency Mode In Ubuntu 22.04 / 20.04 / 18.04
Login To Rescue Mode Or Emergency Mode In Ubuntu Linux
This tutorial explains how to boot into rescue mode or emergency mode in Ubuntu 22.04, 20.04 and 18.04 LTS editions.
As you might already know, Runlevels are replaced with Systemd targets in many Linux distributions such as RHEL 7 / RHEL 8 and Ubuntu 16.04 LTS and newer versions. For more details about runlevels and systemd target, refer to this guide.
This guide is specifically written for Ubuntu, however the steps given below should work on most other Linux distributions that use Systemd as the default service manager.
Before getting into the topic, let us have a brief understanding about what is rescue mode and emergency mode and what is the purpose of these both modes.
What is Rescue Mode?
The rescue mode is equivalent to single user mode in Linux distributions that use SysV as the default service manager. In rescue mode, all local filesystems will be mounted, only some important services will be started. However, no normal services (E.g network services) won’t be started.
The rescue mode is helpful in situations where the system can’t boot normally. Also, we can perform some important rescue operations, such as reset root password, in rescue mode.
What is Emergency Mode?
In contrast to the rescue mode, nothing is started in the emergency mode. No services are started, no mount points are mounted, no sockets are established, nothing. All you will have is just a raw shell. Emergency mode is suitable for debugging purposes.
First, we will see how to boot into rescue mode and emergency mode in Ubuntu 22.04 and 20.04 LTS distributions. The procedure for entering rescue mode in Ubuntu 22.04 and 20.04 LTS is exactly the same!
Boot into Rescue Mode in Ubuntu 22.04 / 20.04 LTS
We can boot into rescue mode in two ways.
Method 1
Power on your Ubuntu system. Hit the ESC key right after the BIOS logo disappears to display the Grub menu.
In the GRUB menu, choose the first entry and press » e « to edit it.
GRUB Menu In Ubuntu 22.04 / 20.04 LTS
Hit the DOWN arrow and find the line that starts with the word » linux « and add the following line at the end of it. To reach the end, just press CTRL+e or use the END key or LEFT/RIGHT arrows in your keyboard.
Edit Grub Boot Menu Entries To Enter Into Rescue Mode In Ubuntu 22.04 / 20.04 LTS
After adding the above line, hit Ctrl+x or F10 to boot into rescue mode.
After a few seconds, you will be landed in the rescue mode (single user mode) as root user. You will be prompted to press ENTER to enter the maintenance mode.
Here is how rescue mode looks like in Ubuntu 22.04 / 20.04 LTS systems:
Boot Into Rescue Mode In Ubuntu 22.04 / 20.04 LTS
Now do whatever you want to do in the rescue mode. You may need to mount the root ( / ) file system in read/write mode before doing any operations in rescue mode.
Mount Root File System In Read Write Mode In Ubuntu 22.04 / 20.04 LTS
Once done, press » Ctrl+d « to boot into normal mode. Alternatively, you can type any one of the following commands to boot into normal mode.
If you want to reboot the system instead of booting into normal mode, enter:
Method 2
In this method, you don’t need to edit the grub boot menu entries.
Power on the system and choose «Advanced options for Ubuntu» from the Grub boot menu.
Choose Advanced Options For Ubuntu From Grub Boot Menu
Next, you will see the list of available Ubuntu versions with Kernel versions. Choose the «Recovery mode» in the grub boot menu in Ubuntu.
Choose Recovery Mode In Grub Boot Menu In Ubuntu 22.04 / 20.04 LTS
After a few seconds, you will see the Ubuntu recovery menu. From the recovery menu, choose «Drop to root shell prompt» option and hit the ENTER key.
Enter Into Root Shell Prompt In Ubuntu 22.04 / 20.04 LTS
Now you will be landed in the rescue mode.
Ubuntu Maintenance Mode
Mount the root (/) file system in read/write mode by entering the following command:
Mount Root File System In Read Write Mode In Ubuntu
Do whatever you want to do in the rescue mode.
Once done, type exit to return back to the recovery menu.
Finally, choose «Resume normal boot» option and hit the ENTER key.
Boot Into Normal Mode In Ubuntu
Press ENTER key again to exit recovery mode and continue booting into normal mode.
Exit The Recovery Mode In Ubuntu
If you don’t want to boot into normal mode, type » reboot « and press ENTER from the maintenance mode to restart your system.
Boot into Emergency Mode in Ubuntu 22.04 / 20.04 LTS
When the GRUB boot menu appears, press » e « to edit it.
GRUB Menu In Ubuntu 22.04 / 20.04 LTS
Find the line that starts with the word » linux « and add the following line at the end of it.
Edit Grub Boot Menu Entries To Enter Into Emergency Mode In Ubuntu 22.04 / 20.04 LTS
After adding the above line, hit Ctrl+x or F10 to boot into emergency mode.
After a few seconds, you will be landed in the emergency mode as root user. You will be prompted to press ENTER to enter the maintenance mode.
Here is how emergency mode looks like in Ubuntu 22.04 / 20.04 LTS system:
Boot Into Emergency Mode In Ubuntu 22.04 / 20.04 LTS
Now do whatever you want to do in the emergency mode. You may need to mount the root ( / ) file system in read/write mode before doing any operations in this mode.
Once done, press » Ctrl+d « to boot into normal mode. Alternatively, you can type any one of the following commands to boot into normal mode.
If you want to reboot the system instead of booting into normal mode, enter:
Related read:
Boot into Rescue Mode in Ubuntu 18.04 LTS
Boot your Ubuntu system. When the Grub menu appears, choose the first entry and press e to edit. (To reach the end, just press CTRL+e or use the END key or LEFT/RIGHT arrows in your keyboard):
If you don’t see the Grub menu, just hit ESC key right after the BIOS logo disappears.
Find the line that starts with word «linux» and add the following line at the end of that line (To reach the end, just press CTRL+e or use the END key or LEFT/RIGHT arrows in your keyboard):
Edit Grub Menu
Once you added the above line, just press CTRL+x or F10 to continue to boot into rescue mode. After a few seconds, you will be landed in the rescue mode (single user mode) as root user.
Here is how rescue mode looks like in Ubuntu 18.04 LTS server:
Ubuntu Rescue Mode
Next, type the following command to mount root ( / ) file system into read/write mode.
Boot into Emergency Mode
Booting your Ubuntu into emergency is as same as above method. All you have to do is replace » systemd.unit=rescue.target « with » systemd.unit=emergency.target « when editing grub menu.
Edit Grub Menu
Once you added «systemd.unit=emergency.target», press Ctrl+x or F10 to continue booting into emergency mode.
Ubuntu Emergency Mode
Finally, you can mount root filesystem into read/write mode with command:
Switch between Rescue and Emergency Modes
If you are in rescue mode, you don’t have to edit the grub boot entry as I mentioned above. Instead, just type the following command to switch to emergency mode instantly:
Similarly, to switch from emergency to rescue mode, type:
Conclusion
You know now what is rescue and emergency modes and how to boot into rescue and emergency modes in Ubuntu 22.04, 20.04 and 18.04 LTS systems. Like I already mentioned, the steps provided here will work on many recent Linux versions that uses Systemd.
Senthilkumar Palani (aka SK) is the Founder and Editor in chief of OSTechNix. He is a Linux/Unix enthusiast and FOSS supporter. He lives in Tamilnadu, India.
The problem comes…
On an autumn day, it’s sunny, cloudy and everything goes right until when I install something. In the installing progress, it had some errors due to install unsuccessfully. But not enough, it led to the shit. And I think, you got the same shit to me because you have no reason to find and read this article except you are trying to find the solution for your problem — like what I was.
And how did I fix it? I tried a lot of ways to fix it, but almost all these ways did not work. And I had to try the last way (with me) because this way has a little bit complicated.
Fix it
Now there are 2 solutions that may help you fix the problem:
1. Run the script directly
It did not work for me, but maybe can help you.
You press enter following the instructions as displayed on the screen. And then you run those scripts in the terminal:
fdisk -l or fsck /dev/sda to list all the disk partitions.
- identify the /dev/sdXX device name for your “Linux Filesystem”
- type sudo fsck -f /dev/sdXX , replacing sdXX with the number you found earlier
- sudo fsck -f /dev/sda9
- repeat the fsck command if there were errors
- type reboot
If it does not work, move on to the next solution.
2. Using Live USB
Preparation
First, you need 1 USB and install Ubuntu on that. Why? This way uses live USB to fix that problem.
You have to use the Live USB to:
Step 1: Create a Bootable USB Ubuntu with a compatible version
- Download image from the Linux home If you are using Ubuntu 20.04, you should download the Ubuntu 20.04 .iso https://ubuntu.com/download/desktop
- Download Rufus: https://rufus.ie/en/
- Install Ubuntu on USB using Rufus
Open Rufus and install with the .iso file you downloaded before
Step 2: Access BIOS mode to choose boot using USB (installed Ubuntu)
- Access BIOS mode
First, you have to access BIOS mode to choose boot using USB. There are ways to access BIOS mode with different laptop brands:
- ASRock: F2 or DEL
- ASUS: F2 for all PCs, F2 or DEL for Motherboards
- Acer: F2 or DEL
- Dell: F2 or F12
- ECS: DEL
- Gigabyte / Aorus: F2 or DEL
- HP: F10
- Lenovo (Consumer Laptops): F2 or Fn + F2
- Lenovo (Desktops): F1
- Lenovo (ThinkPads): Enter then F1.
- MSI: DEL for motherboards and PCs
- Microsoft Surface Tablets: Press and hold the volume up button.
- Origin PC: F2
- Samsung: F2
- Toshiba: F2
- Zotac: DEL
In BIOS mode, you choose to start with USB (installed Ubuntu):
- In Boot Priority frame, you choose your USB
- Or, press F8 ( Boot Menu) and choose your USB
And then, it starts your Ubuntu on Live USB, the process will take several minutes to load (depending on your laptop), when everything is done, you choose Try Ubuntu.
Step 3: The most important step:
When you booted Ubuntu on live USB successfully, then you have to do these steps sequentially: