Error grub core fs fshelp



Решение ошибок программы-загрузчика GRUB

Нередко возникает необходимость в установке двух принципиально разных операционных систем на один компьютер: Windows и Linux. Разумеется, подобное «соседство» будет связано с некоторыми неудобствами. Для установки, как правило, используют специальную программу GRUB. Но к сожалению, при её использовании можно столкнуться с рядом ошибок. В этой статье разберёмся с тем, как исправить ошибки загрузчика GRUB. Давайте же начнём. Поехали!

Для начала давайте определимся с тем, что из себя представляет эта программа. GRUB — представляет собой системный загрузчик, устанавливающийся непосредственно с Линукса и записывающий все данные на первый раздел диска (MBR).

Сам rescue mode является отличительной чертой GRUB 2 от его предыдущей версии. Этот режим запускается, если программе-загрузчику не удалось найти файл «grub.cfg» либо не удалось передать управление в kernel (ядро). В итоге не удаётся найти загрузочные файлы и запустить операционную систему. Именно тогда и возникает ошибка.

Следуйте инструкциям ниже, чтобы узнать, как решить проблему с GRUB

Способ 1

Что делать в случае ошибки unknown filesystem grub-rescue? Перед вами окно, в котором можно использовать только 4 команды, их вполне достаточно, чтобы исправить все проблемы и успешно загрузиться:

  • ls — позволяет вывести всё содержимое;
  • set — применяется для установки переменных;
  • unset — очищает переменную;
  • insmod — необходима для загрузки модулей.

Также можно сделать доступным ряд других команд. Сделать их доступными можно, загрузив модуль «normal». Для этого пропишите:

После этого станут доступны:

  • dump — для очистки памяти;
  • exit — команда выхода из загрузчика;
  • chainloader — необходима, чтобы указать последующей команде boot передать управление цепочечному загрузчику;
  • kfreebsd — несколько команд, позволяющих загрузить ядро FreeBSD, его модули;
  • rmmod — позволяет выгрузить указанный модуль ядра;
  • multiboot.

Первым делом нужно отыскать модули, чтобы загрузить их. Для этого введите:

Результатом выполнения команды будет следующее:

(hd0) (hd0,msdos3) (hd0,msdos2) (hd0,msdos1) (hd1) (hd1,msdos2) (hd1,msdos1)

Из этого можно сделать вывод, что загрузчик не может определить файловые системы дисков, поэтому определяет их как msdos. Теперь необходимо угадать видимые диски. В конкретном примере перед вами два диска: hd0 (с тремя разделами) и hd1 (с двумя разделами). Допустим, вы знаете, что Linux инсталлирован на диск, который имеет три раздела. В таком случае вам нужен диск с индексом «0».

GRUB даёт названия разделам в обратном порядке. В связи с этим, неясно как трактовать запись: «(hd0,msdos3)». Ведь можно посчитать это как первым разделом, так и третьим. К счастью, из этой ситуации можно выйти при помощи такого синтаксиса команды: «(hd0,1)». Обратите внимание, что в программе-загрузчике GRUB отсчёт дисков идёт с 0, а разделов с 1.

Допустим, что Линукс хранится в первом разделе, тогда он будет обозначаться (hd0,1). В этом случае команда, которую необходимо прописать, будет иметь вид:

Теперь модули могут быть загружены. Использовать их можно только после загрузки.

После того как вы выбрали нужный диск, проверьте содержится ли там то, что нужно. Для этого пропишите:

В результате выполнения на экране появится список md файлов.

После этого загрузчик будет переведён в режим полной функциональности. Затем автоматически будут найдены разделы с операционной системой, и откроется меню программы.

Теперь остаётся загрузить Linux. Делается это при помощи команды:

Читайте также:  Не удается подключиться к серверу администрирования по причине transport level error

Способ 2

Всё сильно упрощается, если использовать Live CD – загрузочный диск с системой Linux. Он может быть записан на флешке, на внешнем винчестере или на обычном диске – это неважно, главное, чтобы с него можно было загрузить компьютер.

После загрузки Linux стандартным способом устанавливается бесплатная утилита Boot Repair. Она предназначена именно для устранения ошибок загрузки с помощью загрузчика Grub и очень проста в использовании – достаточно кликнуть по кнопке.

Заметим, что иметь Live CD для линуксоида всегда полезно и даже необходимо. Это зачастую избавляет от множества проблем, так как позволяет загрузить полноценную систему с внешнего носителя и использовать весь её инструментарий. Скачать такой диск с любой версией Linux не представляет сложностей, в комплекте обычно идёт инструкция по записи его на флешку.

После выполнения всех этих действий ошибка будет устранена. Пишите в комментариях была ли полезна для вас эта статья и задавайте любые интересующие вопросы по рассмотренной теме.

Источник

Linux Mint Forums

Welcome to the Linux Mint forums!

Error at boot — /grub-core/fs/fshelp.c: . . . normal.mod (new install) [solved]

Error at boot — /grub-core/fs/fshelp.c: . . . normal.mod (new install) [solved]

Post by SprinterDriver » Sun Jan 16, 2022 4:18 pm

I just installed LM 20.3 Cinnamon on a somewhat old computer, Dell Optiplex 780. The difference from a default install:

  • Formatted the /sdb1 (80GB old Intel flash drive) as BTRFS
  • The /var is located /sda1

The installation went normally without any warnings. However, at boot I get this error:

The thing about this computer is, there seem to be no way to alter the boot order at bios, so I cannot force the computer to boot (only) from INTEL SSDSA2M080.
What I ghave done so far to prevent wrong hdd to boot: I booted up LM live desktop and useg Gparted to remove boot flag on WDC WD3200AVJS-6 (sda). This had no effect at next reboot, so I suspect there is something else wrong here.

Extra info about former OS:
I’ve ran Fedora 34 on this computer since about a year now. The difference is that the OS partition was then on a hard drive at the same location and sata cable as the SSD today. Unfortunately I do not remember where the boot sector was located back then (intended to be helpful or to verify that this pc was indeed able to boot from second hdd).

I ask myself. Unfortunately the computer cabinet is not very flexible, the WDC WD3200AVJS-6 (sda) is placed in a special plastic casing that cannot hold a 2,5′ drive.

I hope some of you can spot if I have done some obvious stupid choices during installation. A quick web search on the boot error doesn’t give me much information.

Some info (Currently on live desktop Mint-Mate, booting from a 32GB thumb drive with Ventoy)

I was able to install LM Mate after deactivated the WDC WD3200AVJS-6 hdd, and it boot up just fine. I will now try to re-activate that drive to see if this in fact are a boot sequense issue. The only thing I did different is to not put /var on a second hdd.

Читайте также:  Sql server agent error 1053

Ok, I know what the issue are. I re-activated the WDC WD3200AVJS-6 hdd, and after reboot I got the same error.

That means this is solely a issue about boot order and not related to Linux Mint OS. I put it as «solved».

Solution: I installed LM over again, but this time I put /boot as first partition on the WDC WD3200AVJS-6 hdd.

Источник

How to Recover GRUB 2 Bootloader in CentOS 8

GRUB (GRand Unified Bootloader) 2 is part of GNU Project and the default bootloader for famous Linux distros like RHEL, CentOS, Ubuntu, etc. GRUB is the first software program that runs when a computer is started. GRUB is responsible for loading the Kernel software. The Kernel then initializes the rest of the operating system.

There are situations in which GRUB bootloader is corrupted. In such scenarios, the SysAdmin have to perform the recovery of the GRUB.

In this article, we are discussing the following four scenarios and how to recover GRUB 2 bootloader in CentOS 8 server.

  1. The GRUB menu i.e. grub.cfg is corrupted or missing.
  2. The CentOS 8 Kernel i.e. vmlinuz-4.x is corrupted or missing.
  3. The CentOS 8 initrd i.e. initramfs-4.x is corrupted or missing.
  4. The /boot directory is corrupted or missing.

Table of Contents:

Environment Specification:

We have provisioned virtual machine with minimally installed CentOS 8 operating system with following specification.

  • CPU — 3.4 Ghz (2 cores)
  • Memory — 1 GB
  • Storage — 20 GB
  • Operating System — CentOS 8.0
  • Hostname — grub-recovery-01.recipes.com
  • IP Address — 192.168.116.206 /24

How to Recover grub.cfg (GRUB Menu) in CentOS 8:

Connect with grub-recovery-01.recipes.com using ssh as root user.

To produce this recovery scenario, we are deleting the grub.cfg.

Your system will continue to perform smoothly, unless you restart it and it will then unable to find the grub.cfg file and it will failed to boot CentOS 8 operating system.

Reboot the system now.

The machine will now boot into GRUB prompt because of the missing grub.cfg file.

Restart the system and boot using CentOS 8 ISO/DVD.

At the CentOS 8 installation menu, select Troubleshooting and press .

Select Rescue a CentOS Linux system and press .

It will ask you for mounting your filesystem, choose the option and ‘1’ and press .

Press again to acquire a shell.

Execute chroot command to access your filesystem.

By using grub2-mkconfig command, you can regenerate grub.cfg file.

If you are working on an UEFI based machine then you have to generate grub.cfg file in /boot/efi/EFI/centos/ directory.

If you are using SELinux, then create following file to trigger SELinux file relabeling process on next startup.

Finally exit from chrooted environment and reboot your system.

Boot using your Hard Disk and now it will display the GRUB boot menu this time.

We have successfully recovered grub.cfg file on CentOS 8.

How to Recover vmlinuz-4.x (Kernel) in CentOS 8:

Connect with grub-recovery-01.recipes.com using ssh as root user.

To produce this recovery scenario, we are removing the vmlinuz-4.18.0-80.el8.x86_64 file.

Reboot the system.

Читайте также:  Ovpn tls error tls key negotiation failed to occur within 60 seconds

On boot, GRUB will display the following warning and unable to load Kernel file.

Restart your system and boot using CentOS 8 ISO/DVD.

At the CentOS 8 installation menu, select Troubleshooting and press .

Select Rescue a CentOS Linux system and press .

It will ask you for mounting your filesystem, choose the option and ‘1’ and press .

Press again to acquire a shell.

Go to Packages directory in ISO/DVD.

Reinstall CentOS 8 Kernel using following command.

Verify that vmlinuz-4.x file is created by the installer.

If you are using SELinux then create following file to trigger SELinux file relabeling process on next startup.

Reboot the system now.

The GRUB will be able to load the Kernel now and you will reach at the login prompt after successful startup.

We have successfully recovered CentOS 8 Kernel.

How to Recover initrd image in CentOS 8:

Connect with grub-recovery-01.recipes.com using ssh as root user.

To initiate this recovery scenario, we are removing the initramfs-4.18.0-80.el8.x86_64.img file.

Reboot your system.

After reboot the GRUB will display following warning and unable to find initramfs-4.x file.

Restart the system and boot using CentOS 8 ISO/DVD.

At the CentOS 8 installation menu, select Troubleshooting and press .

Select Rescue a CentOS Linux system and press .

It will ask you for mounting your filesystem, choose the option and ‘1’ and press .

Press again to acquire a shell.

Execute chroot command to access our filesystem.

Use dracut command to recreate initramfs-4.x file.

Verify that initramfs-4.x file is created by dracut command.

Exit chroot and reboot the system now.

The GRUB will be able to load the initrd image now and you will reach at the login prompt after successful startup.

CentOS 8 initrd image has been recovered.

How to Recover /boot directory in CentOS 8:

Connect with grub-recovery-01.recipes.com using ssh as root user.

To initiate this recovery scenario, we are removing /boot directory.

Reboot your system.

After reboot the GRUB will show the «grub rescue» prompt.

Restart the system and boot using CentOS 8 ISO/DVD.

At the CentOS 8 installation menu, select Troubleshooting and press .

Select Rescue a CentOS Linux system and press .

It will ask you for mounting your filesystem, choose the option and ‘1’ and press .

Press again to acquire a shell.

The CentOS 8 DVD/ISO is mounted in mnt directory.

Go to BaseOS packages directory.

Reinstall kernel-core package using following command.

Ignore above error, we will create this file manually.

Run chroot to mount /mnt/sysimage as root directory.

Reinstall GRUB 2 using following command.

Recreate grub.cfg (GRUB menu) using grub2-mkconfig command.

If you are using SELinux, then create following file to trigger SELinux file relabeling process on next startup.

Finally exit from chrooted environment and reboot your system.

Boot using your Hard Disk and now it will display the GRUB boot menu this time.

We have successfully recovered /boot directory on CentOS 8.

We have discussed all four scenarios and demonstrate how to recover GRUB 2 bootloader in CentOS 8.

If you find this article useful? Consider supporting us by

Источник

Оцените статью
toolgir.ru
Adblock
detector