Ошибка grub rescue unknown filesystem
Содержание:
- Как восстановить загрузчик GRUB?
- 7 ответов
- grub rescue – что делать?
- Как восстановить загрузчик GRUB?
- Final Verdict
- Thank you
- Making Permanent Repairs
- Восстановление Grub в rescue mode
- Guessing the boot partition number #
- Обновление загрузчика
- Grub rescue Commands
- Grub — что это?
- Features
- GRUB 2 Command Shell
- Booting From grub>
- Как исправить Grub unknown error
- Как загрузить Kaspersky Rescue Disk через SYSLINUX
- Заключение
Как восстановить загрузчик GRUB?
Если случалось так, что файлы в соответствующих разделах полностью затерты, то придется заниматься восстановлением загрузчика. Процесс этот можно осуществить двумя способами.
Первый из них предполагает взаимодействие с системой через терминал:
- Требуется загрузить Linux с того носителя, который использовался при инсталляции. Иногда необходимо войти в БИОС, чтобы включить загрузку с диска или флешки.
- Далее стоит открыть терминал, нажав комбинацию клавиш Ctrl + Alt + T, и вывести существующие разделы на экран посредством команды sudofdisk —i.
- После этого появится таблица с каталогами. Нужно найти корневой раздел и смонтировать его. Для этого следует ввести sudomount /dev/sda5/mnt. Вместо sda5 требуется прописать имя конкретного раздела. Он может отличаться.
- Восстановить загрузчик помогает команда sudo grub-install – root-directory=/mnt /dev/sda.
- В самом конце нужно ввести sudo reboot для перезагрузки.
При необходимости можно воспользоваться специальной утилитой, чтобы автоматизировать процесс. Для этого после загрузки с установочного носителя придется ввести всего три команды. Пример для дистрибутива Ubuntu.
- первая – sudo add-apt-repository ppa^yannubuntu/boot-repair;
- вторая – sudo apt-get update;
- третья – sudo apt-get install boot-repair.
7 ответов
Как уже указывал Гилл, в grub rescue есть несколько команд, которые позволяют загружать модули (например, с диска спасения grub).
В моем случае загрузка из другого источника была невозможна — единственным вариантом было удаление hdd с компьютера и использование дешевого внешнего hd-футляра для подключения диска к другому компьютеру через USB. На этом компьютере я использовал MbrFix , чтобы исправить mbr.
Когда GRUB ушел, так же как и возможность загрузки в Windows. Теперь вам нужно будет загрузиться с компакт-диска Windows, чтобы восстановить главную загрузочную запись (MBR). Вы также можете использовать другие загрузочные компакт-диски, такие как Конечный загрузочный компакт-диск для Windows , Bart PE или Загрузочный компакт-диск Hiren , если у вас нет средств установки Windows. Вот шаги:
Загрузите с компакт-диска Windows и выберите «Восстановить». Кроме того, загрузитесь с одного из других вышеупомянутых загрузочных компакт-дисков и запустите командную строку.
Для компьютеров под управлением Windows 8:
Добавьте дополнительные учебники для операционных систем.
Запустите следующие две команды в командной строке:
Еще один инструмент для добавления к тому, что должен сказать Ricky и preufsumme: boot-repair-disk .
Вы можете использовать grub rescue , чтобы снова запустить Windows.
Список команд будет похож на
NB: для этого требуется наличие модулей, которые реализуют все эти команды!
Отчитавшись над комментариями о спасении grub, похоже, что это сработает, тогда вы можете попасть в окна и переустановить загрузчик Windows в MBR. Это работает, однако, если ваш раздел Windows является первым разделом на диске, и он находится на первом диске, который видит компьютер. Если у вас несколько дисков или дисков SATA вместо дисков PATA, вам может потребоваться использовать другую команду для rootnoverify (попробуйте sd0 вместо hd0)
grub rescue – что делать?
Итак, мы находимся консоли загрузчика. Она имеет небольшой командный интерпретатор наподобие Bash. Список всех доступных команд можно получить, набрав:
Введите команду для просмотра существующих разделов:
В данном примере всего один раздел msdos1 на жёстком диске hd0.
Убедимся, что это нужный раздел. Для этого выводим список файлов загрузчика:
Находим файл grub.cfg значит всё в порядке, продолжаем. Если каталог не обнаружен, то перебираем остальные разделы дисков пока не найдём.
Следующая команда создаёт префикс для каталога загрузчика:
Установим раздел в качестве корневого:
После успешной загрузки в Linux не забудьте переустановить загрузчик командой:
(вместо «_» введите букву загрузочного жёсткого диска).
Далее выполните команду обновления конфигурации файла grub.cfg:
Обычно grub2 автоматически определяет установленные системы, в том числе Windows, и добавляет их в список загрузки.
Как восстановить загрузчик GRUB?
Если случалось так, что файлы в соответствующих разделах полностью затерты, то придется заниматься восстановлением загрузчика. Процесс этот можно осуществить двумя способами.
Первый из них предполагает взаимодействие с системой через терминал:
- Требуется загрузить Linux с того носителя, который использовался при инсталляции. Иногда необходимо войти в БИОС, чтобы включить загрузку с диска или флешки.
- Далее стоит открыть терминал, нажав комбинацию клавиш Ctrl + Alt + T, и вывести существующие разделы на экран посредством команды sudo fdisk —i.
- После этого появится таблица с каталогами. Нужно найти корневой раздел и смонтировать его. Для этого следует ввести sudo mount /dev/sda5/mnt. Вместо sda5 требуется прописать имя конкретного раздела. Он может отличаться.
- Восстановить загрузчик помогает команда sudo grub-install – root-directory=/mnt /dev/sda.
- В самом конце нужно ввести sudo reboot для перезагрузки.
При необходимости можно воспользоваться специальной утилитой, чтобы автоматизировать процесс. Для этого после загрузки с установочного носителя придется ввести всего три команды. Пример для дистрибутива Ubuntu.
- первая – sudo add-apt-repository ppa^yannubuntu/boot-repair;
- вторая – sudo apt-get update;
- третья – sudo apt-get install boot-repair.
Final Verdict
You can use the three most effective ways to fix Windows 10 grub rescue problem. You can learn that both Windows Automatic Repair and EaseUS Partition Master can be helpful in resolving the problem.
We highly recommend you use EaseUS Partition Master to help you partition the hard drive correctly. Using the tool is far easier than the manually inputting command lines to fix error no such partition grub rescue on Windows 10.
All you need to do is download and launch the program, select the partition, and then choose precisely what you want to do with it. EaseUS Partition Master allows you to directly transfer space from one drive to another to make full use of disk space.
Thank you
- cjg67 for his work on improving Rescapp documentation grammar.
- cjg67 for his incredible work on packaging Rescapp to Arch and Fedora. (BTW one of these days I need to add a page dedicated to Rescapp where I feature those packages.)
- eris23 from linuxtracker community who has uploaded many times the Rescatux isos to the torrent site.
- Many anonymous users which create new bugs at rescapp issues page.
- Many anonymous users which came back to the Rescatux chat after trying our given advice in the chat
- Alf Gaida (agaida) on the many times he has helped me on integrating LXQt to Rescatux.
- bTactic, for helping Rescatux with their Zimbra based email service and their hosting.
Making Permanent Repairs
So far we have made temporary changes on the terminal, so they will work only once and when we reboot again we have to do the same thing.To get rid of this hassle we have to make settings permanent and as now We have successfully booted your system, run these commands to fix GRUB permanently:
$ sudo update-grubGenerating grub configuration file ...Found background: /usr/share/images/grub/Apollo_17_The_Last_Moon_Shot_Edit1.tgaFound background image: /usr/share/images/grub/Apollo_17_The_Last_Moon_Shot_Edit1.tgaFound linux image: /boot/vmlinuz-3.13.0-29-genericFound initrd image: /boot/initrd.img-3.13.0-29-genericFound linux image: /boot/vmlinuz-3.13.0-27-genericFound initrd image: /boot/initrd.img-3.13.0-27-genericFound linux image: /boot/vmlinuz-3.13.0-24-genericFound initrd image: /boot/initrd.img-3.13.0-24-genericFound memtest86+ image: /boot/memtest86+.elfFound memtest86+ image: /boot/memtest86+.bindone$ sudo grub-install /dev/sdaInstalling for i386-pc platform.Installation finished. No error reported.
When you run remember you’re installing it to the boot sector of your hard drive and not to a partition, so do not use a partition number like .
Восстановление Grub в rescue mode
Если по каким-то причинам у вас нет доступа к LiveCD/USB-носителю, а также к компьютеру, с помощью которого этот самый носитель можно было бы сделать, то этот способ для вас.
Само восстановление проходит таким образом: сначала мы подгружаем все модули, чтобы открыть доступ ко всей функциональной части Grub, после чего запуститься с нужного раздела. Надо понимать, что Grub состоит из двух частей:
Одна из этих частей (первая) записана в MBR диска. В ней присутствует базовый функционал и ничего больше (консоль в rescue mode).
Стало быть, нам нужно определить, в каком разделе находится вторая часть Grub (находится в каталоге /boot/grub), и после чего подгрузить все недостающие модули. А вот уже после этого мы сможем запустить загрузчик с нужного раздела. В rescue mode есть всего четыре команды:
ls set unset insmod
Для начала вводим следующую команду:
ls
В выводе будет что-то подобное:
(hd0) (hd0,msdos3) (hd0,msdos2) (hd0,msdos1) (hd1) (hd1,msdos2) (hd1,msdos1)
В некоторых случаях Grub неправильно опеределяет файловые системы находящиеся на разделах дисков. В данном примере загрузчик показывает их как msdos. Мы должны попытаться угадать диски, которые видим. В примере доступно два диска. Диск с индексом 0 содержащий три раздела, и диск с индексом 1 содержащий два раздела. Если вы знаете структуру своих дисков, определить нужный труда не составит.
В загрузчике Grub разделы нумеруются в обратном исчислении. Не очень ясно какой именно из разделов назван, к примеру (hd0,msdos3). Чтобы было более понятно, можно использовать вид (hd0,1). Если в грабе отсчет дисков идет с 0, а разделов с 1, то можно определить, что операционная система установлена в первый раздел первого раздела — (hd0,1). Используем следующую команду:
set prefix=(hd0,1)/boot/grub set root=(hd0,1)
С помощью этих команд мы приказываем системе использовать какой-то конкретный диск, для выполнения всех остальных операций (в нашем случае, это диск (hd0,1)). Чтобы проверить есть ли на данном диске загрузчик, введем эту команду:
ls /boot/grub
Если в выводе будет список файлов и папок, значит мы все сделали правильно. Теперь можно загрузить все необходимые модули. Для этого выполним команды:
insmod ext2 insmod normal normal
После выполнения команд Grub загрузится в полнофункциональном режиме. Будут найдены все операционные системы, которые установлены на компьютере, после чего будет показано стандартное меню загрузки.
Чтобы закрепить результат (и не проделывать все то же самое после перезапуска ПК), нужно зайти в терминал своего дистрибутива Linux, где с root правами выполнить следующую команду:
grub-install /dev/sdX
sdX — диск, на который должен быть установлен Grub.
Если операционная система расположена на разделе с файловой системой btrfs, то нам необходимо выполнить следующие команды:
set prefix=(hd0,1)/@/boot/grub set root=(hd0,1)
И подгрузить модули:
insmod btrfs insmod normal
Ну и теперь запустить GRUB:
normal
Guessing the boot partition number #
If you don’t memorize your partition table by heart like me, your first mission
is to guess the partition where your
directory is located.
There are three common scenarios.
-
Your boot partition is encrypted: If you fall into this category then
you’ve chosen the wrong guide. However, this blog
post
may be helpful for you. -
Your directory is located in the root partition: You’ll have to
find which partition is your root partition. It is usually recommended to use
filesystem for root partitions. A typical GNU/Linux directory
structure is explained in this
post. -
You have a separate boot partition: I installed my Arch Linux using
system encryption method. Hence, I have a separate boot partition that I
formatted using . , and are all
supported for the boot partition on modern
GNU/Linux distributions.
Filesystem of each partition
For each partition, we need to find out what filesystem is being used.
If the filesystem is unknown then we just ignore the partition.
I tried this same command with all partitions until I found out that my
partition is using . I don’t have any partition, but I guess that
GRUB is not very accurate and mistakes for .
At this stage, we need to find out where GRUB modules are located.
Add a to the last command to show the content of .
The GRUB modules directory
is the directory we’re trying to find.
Let’s list the content of to make sure it’s the right GRUB modules directory.
If your directory is located in the root partition, your GRUB modules
path is probably .
Обновление загрузчика
Дальнейшее решение проблемы с загрузкой будет зависеть от того, что у вас сломалось. Возможно будет достаточно просто переустановить загрузчик:
# grub-install /dev/sda
Эта команда переустановит в MBR код загрузчика, который будет подхватывать тот раздел /boot, с которого вы в данный момент загрузились. Если это не поможет, то внесите необходимые изменения в в конфиг grub и пересоздайте его командой:
# grub-mkconfig -o /boot/grub/grub.cfg
А после этого установите на диск:
# grub-install /dev/sda
Конфиг груба находится в разных дистрибутивах в разных местах. Какие туда вносить изменения, заранее тоже не могу сказать, будет зависеть от проблем. Скорее всего все это придется вам гуглить, если не получится сходу починиться по моим рекомендациям.
Grub rescue Commands
Each of GRUB failed modes can be fixed by the grub terminal or live CD installer.
At the grub command prompt, enter ‘ls’ to see the disk drives and available partitions:
Where:
hd0: the hard disk
msdos: the partition type
Normally, the OS is booted from the first partition of the hard disk. In this case, to verify that the bootable partition is ‘msdos1’, let’s run the following command:
Next, let’s explore the grub2 directory by running:
Output:
As you can see, the grub in Linux has its own configuration file: ‘grub.cfg’.
If you don’t see this file, you can create it by running the command:
In order to boot your system, let’s type:
Output:
Running the ‘set root’ will define the bootable partition. The default kernel is linux v3.10.
Now, we have to define the path to grub2 directory:
Then:
Here also, you will need to change the partition to your boot partition.
If you are unable to boot your system (which might be due to bad filesystem, or due to missing GRUB configuration file), you will need to boot from some other medium. You can use some bootable rescue CD or the Live CD of your distribution if available.
Once you have booted into your system, you might need to create the GRUB configuration files, if missing or if misconfigured. To create these configuration files, run:
This command needs superuser privileges. So run this command (and the following commands in this article) as root.
The next step is to install GRUB on the MBR. This will fix the problem caused by Windows, in which Windows installs its bootloader on MBR, after installation of Windows over Linux. Here I assume that you have booted from the Live or rescue CD.
Now, before we go to the details of installing GRUB on MBR, we need to mount the root partition of Linux.
Here, the root partition is assumed to be ‘/dev/sda1’. This partition is mounted on /mnt directory. You can choose your own mount point, and your root filesystem partition may be different.
Now, we are ready to install GRUB. Run the following command:
This will install the GRUB on Master Boot Record. If you wish to install it on some partition, replace the last argument of the above command with the proper partition.
Grub — что это?
Grub является аббревиатурой английского GRand Unified Bootloader, представляет собой загрузчик ОС, спроектированный компанией GNU. Утилита устанавливается, когда Linux ставится второй системой. Она позволяет во время включения, перезагрузки ПК выбрать операционную систему из установленных, а именно ту, что необходима пользователю. Последняя версия программы поддерживает несколько ОС, такие как Solaris, Linux, FreeBSD. Неподдерживаемые ОС загружаются посредством передачи Grub данной функции другому загрузчику (NTLDR у Windows).
Grub 2 построен многомодульной конструкцией, его возможно даже настроить на загрузку игр. Внешне может выглядеть чёрно-белой таблицей либо иметь стильный дизайн. Обеспечивает нормальное функционирование разных файловых систем: FAT 16, 32; NTFS, XFS, ext, ISO.
Features
Rescatux 0.73 supports booting from UEFI Secure Boot and traditional BIOS. Both amd64 and 686 systems are supported.
Rescatux
includes Rescapp, a graphical rescue tool that will assist users to
regain access to a computer that has become non-bootable among many
other features.
GNU/Linux options
- Change Gnu/Linux Password : Change a user’s password
- File System Check (Forced Fix) : File System Check (Forced Fix)
- Easy GNU/Linux Boot Fix : Fsck partition, update grub menues, restore GRUB into the MBR and order UEFI entries
- Restore Grub : Restore GRUB into the MBR
- Regenerate sudoers file : Define a new sudoers file
- Update Grub Menus : Update GRUB Configuration File
UEFI Boot specific options
- UEFI Partition Status : Check UEFI partition status
- Check UEFI Boot : Check if Rescatux has boot in UEFI mode
- Create UEFI Boot Entry : Create a new UEFI Boot entry out of your EFI files
- Change UEFI Boot Order : Change UEFI Boot order
- Reinstall Microsoft Windows UEFI : Reinstall Microsoft Windows UEFI boot entries
- Fake Microsoft Windows UEFI : Fake Microsoft Windows UEFI boot entry
- Hide Microsoft Windows UEFI : Hide Microsoft Windows UEFI boot entry and define default fallback one.
- Easy Windows Admin : Promote to Admin, Reset Windows (NT,200x,XP,Vista,Seven) password and unlock user
- Reset Windows password : Reset Windows (NT,200x,XP,Vista,Seven,10) password
- Promote Windows user to Admin : Promote Windows (NT,200x,XP,Vista,Seven,10) user to Administrator
- Unlock Windows user : Unlock Windows (NT,200x,XP,Vista,Seven,10) user
Other options
- Boot Info Script : Boot Information Script
- Check bios_grub partition on GPT : Check if there is a bios_grub partition on a GPT disk
- Gptsync : Create an hybrid MBR inside a GPT partition (Gptsync)
- Recompute Hybrid GPT/MBR CHS : Recompute CHS values on an hybrid GPT/MBR partitiont table
- Restore Windows MBR : Restore generic MBR code so that Windows boots again
- System Info Script (Inxi) : System Info Script (Inxi)
Support features
- Chat : Get online human help (chat)
- Help : Help on using Rescapp
- Share log : Share Rescatux logs. It generates a pastebin in paste.debian.net and shows it to you so that you can copy and paste the url in the chat.
- Share log on forum : Share Rescatux logs on a forum. It generates a temporary file ready to copy and paste on your favourite forum (ubuntuforums.org and others).
- Show log : Show Rescatux logs so that you can ask help and supporters can know what happens when you run Rescatux options
- Web : Access online Rescatux website
External tools
- Gparted : GParted is a free partition editor for graphically managing your disk partitions.
- Testdisk : Testdisk is a text wizard drive program for rescuing disks, partitions, and files.
- Photorec : Photorec is a text wizard drive program for rescuing files. Despite its name it recovers much more files than photo files.
GRUB 2 Command Shell
When you’re at the prompt, you have a lot of functionality similar to any command shell such as history and tab-completion. The mode is more limited, with no history and no tab-completion.
There must be no spaces on either side of the equals sign. Now let’s do a little exploring. Type to list all partitions that GRUB sees:
grub> ls(hd0) (hd0,msdos2) (hd0,msdos1)
What’s all this ? That means this system has the old-style MS-DOS partition table, rather than the shiny new Globally Unique Identifiers partition table (GPT).If you’re running GPT it will say .
Now let’s snoop. Use the command to see what files are on your system:
grub> ls (hd0,1)/lost+found/ bin/ boot/ cdrom/ dev/ etc/ home/ lib/lib64/ media/ mnt/ opt/ proc/ root/ run/ sbin/ srv/ sys/ tmp/ usr/ var/ vmlinuz vmlinuz.old initrd.img initrd.img.old
Hurrah, we have found the root filesystem. You can omit the and labels. If you leave off the slash it will print information about the partition. You can read any file on the system with the command:
grub> cat (hd0,1)/etc/issueUbuntu 14.04 LTS \n \l
Booting From grub>
This is how to set the boot files and boot the system from the prompt. We know from running the command that there is a Linux root filesystem on , and you can keep searching until you verify where is. Then run these commands, using your own root partition, kernel, and initrd image:
grub> set root=(hd0,1)grub> linux /boot/vmlinuz-3.13.0-29-generic root=/dev/sda1grub> initrd /boot/initrd.img-3.13.0-29-genericgrub> boot
The first line sets the partition that the root filesystem is on.The second line tells GRUB the location of the kernel you want to use. Start typing, and then use tab-completion to fill in the rest. Type to set the location of the root filesystem. Yes, this seems redundant, but if you leave this out you’ll get a kernel panic.How do you know the correct partition? hd0,1 = /dev/sda1. hd1,1 = /dev/sdb1. hd3,2 = /dev/sdd2. I think you can extrapolate the rest.
The third line sets the file, which must be the same version number as the kernel.
The fourth line boots your system.
Как исправить Grub unknown error
У вас есть простейший терминал с самой простой командной оболочкой. Чтобы знать какие команды можно там вводить наберите:
Дальше нам нужно посмотреть список доступных разделов, для этого используется команда ls, как в bash:
Без модулей grub поддерживает только ту файловую систему, которая была на /boot. Вы можете попытаться просмотреть содержимое каждого раздела чтобы определить где находятся файлы модулей. Например:
Если вы увидели папку boot, значит это наш раздел. Дальше устанавливаем этот раздел значением переменной root с помощью команды set:
set root=(hd0,1) set prefix=(hd0,1)/boot/grub
Загружаем и запускаем модуль normal, который должен загрузить все, что нам необходимо:
Если раздел /boot не был поврежден, то загрузчик нормально определит все файлы, а потом запустит привычное для вас меню. Конечно, после того, как система загрузится, вам будет необходимо восстановить загрузчик Grub чтобы не вводить эти команды при каждой загрузке системы.
Как загрузить Kaspersky Rescue Disk через SYSLINUX
- Установите загрузчик SYSLINUX, например, в папку /pxeboot.
-
Настройте DHCP- и TFTP-серверы.
Пример настройки DHCP- и TFTP-серверов для PXE-загрузки через dnsmasq в файле /etc/dnsmasq.conf:
#port=0
#DNS on/off
log-dhcp
dhcp-range=192.168.85.0,192.168.85.150,255.255.255.0,12h
dhcp-option=option:router,192.168.85.1
# Set architecture tag for client request
dhcp-match=set:efi-x86_64,option:client-arch,7
dhcp-match=set:efi-x86_64,option:client-arch,9
dhcp-match=set:efi-x86,option:client-arch,6
dhcp-match=set:bios,option:client-arch,0
dhcp-boot=tag:efi-x86_64,»syslinux64.efi»
dhcp-boot=tag:efi-x86_64,»syslinux64.efi»
dhcp-boot=tag:efi-x86,»syslinux32.efi»
dhcp-boot=tag:bios,»pxelinux.0″
enable-tftp
tftp-root=/pxeboot
-
Настройте SYSLINUX.
Пример настройки SYSLINUX через файл /pxeboot/pxelinux.cfg/default:
default menu.c32
prompt 0
menu title Boot Menu
label KRDboot_NFS
menu label Kaspersky Rescue Disk NFS (x64)
linux krd/boot/grub/k-x86_64
initrd krd/boot/grub/initrd.xz
append net.ifnames=0 lang=en dostartx netboot=nfs://192.168.85.135:/pxeboot/krd/
label KRDboot_HTTP
menu label Kaspersky Rescue Disk HTTP (x64)
linux krd/boot/grub/k-x86_64
initrd krd/boot/grub/initrd.xz
append net.ifnames=0 lang=en dostartx netboot=http://192.168.85.135/krd/
label KRDboot_TFTP
menu label Kaspersky Rescue Disk TFTP (x64)
linux krd/boot/grub/k-x86_64
initrd krd/boot/grub/initrd.xz
append net.ifnames=0 lang=en dostartx netboot=tftp://192.168.85.135/krd/
Kaspersky Rescue Disk будет загружен через SYSLINUX.
Заключение
В целом, мы выполнили типовую процедуру восстановления загрузки любого linux сервера, в том числе ubuntu. Если бы раздел boot не получилось восстановить, его нужно было бы создать вручную и проделать все то же самое с восстановлением grub. Это ключевой элемент загрузки linux. Система перестает загружаться чаще всего из-за проблем с ним. Он может быть поврежден установкой рядом других систем или неправильной разбивкой диска.
Важно понимать, что если корневой раздел системы жив, то восстановление непосредственно загрузки — дело техники. Чаще все это все исправляется и система продолжает работать