- Восстановление Grub2
- Восстановление Grub2 с помощью LiveCD
- Шаг 1. Загрузка LiveCD
- Шаг 2. Определение разделов
- Шаг 3. Монтирование файловой системы
- Шаг 4. Подготовка к входу в систему
- Шаг 5. Вход в окружение системы
- Шаг 6. Восстановление Grub2
- Шаг 7. Готово
- Восстановление Grub2 без LiveCD
- Восстановление в Boot Repair
- Выводы
- Введение
- Установка пакетов
- Создание свободного места для дискового раздела grub
- Создание дискового раздела для EFI без использования Live-CD
- Создание дискового раздела для EFI с использованием Live-CD
- Восстановление GRUB EFI в режиме восстановления
Восстановление Grub2
Grub — это загрузчик, используемый для запуска системы в большинстве дистрибутивов Linux, в том числе и в Linux Mint. Повреждение загрузчика может быть вызвано различными причинами, например, установкой Windows, другого дистрибутива Linux или переразметкой диска, изменением размера и положения разделов на диске и так далее.
В случае с установкой другой системы, чтобы восстановить загрузчик Linux Mint нам понадобится LiveCD с любым Linux-дистрибутивом. Самая частая задача из этой категории — восстановление Grub после Windows. Если же ошибка возникла из-за работы с разделами или повреждения файловой системы и загрузчик загружается с сообщением Minimal BASH like line editing is supported — это значит что мы можем справиться и без LiveCD своими силами. Конечно, восстановление grub в linux mint с помощью LiveCD системы намного проще, но не всегда под руками есть нужный диск.
Восстановление Grub2 с помощью LiveCD
В этой статье мы рассмотрим, как выполняется восстановление Grub2 обоими способами. Начнем с более простого способа — с помощью LiveCD. Хотя и статья ориентирована на Linux Mint, но на самом деле подойдет абсолютно для любого дистрибутива, потому что во всех дистрибутивах загрузчик один и тот же, и команды такие же, только версии могут немного отличаться.
Начнем с того, что вам нужна LiveCD система, той же разрядности, что и ваша система Linux Mint, на которую был установлен Grub. Причем, неважно будет там графический интерфейс или нет. Обычно все необходимые инструменты поддерживаются всеми дистрибутивами. А нужны нам только утилиты fdisk, mount и chroot. Чтобы восстановить загрузчик grub2 просто следуйте описанным ниже шагам.
Шаг 1. Загрузка LiveCD
Сначала вставьте носитель с LiveCD системой в дисковод или порт USB, если это флешка. Для загрузки с носителя, возможно, вам сначала понадобится зайти в меню BIOS и выставить приоритет загрузки с внешнего устройства.
Для запуска BIOS нажмите Del, F2, F8 или Shift +F2. В открывшимся меню найдите раздел Boot, и в пункте Boot Device Priority или 1st Boot Device или Boot Option #1 выберите нужное устройство:
Дальше перейдите на вкладку Exit и выберите Exit & Save settings. Дальше начнется загрузка образа.
Шаг 2. Определение разделов
Перед тем как восстановить Grub2, нам нужно понять — на каком разделе установлена система, и на каком разделе были или должны быть файлы загрузчика. Самый простой способ это сделать — воспользоваться утилитой fdisk.
В выводе программы вы видите — разделы всех подключённых к компьютеру дисков, их размер, а также файловую систему. По этим данным вам и предстоит понять, какой раздел используется в качестве корня в вашей системе. Если вы делали разметку вручную, вам не составит труда понять где то, что нужно. Например, у меня корень — /dev/nvme0n1p5 — размером 37 гигабайт, а для загрузчика отдельный раздел не выделялся. Но обычно он тоже имеет файловую систему ext4 ил ext2, а размер до 500 мегабайт. В случае с обычным SSD или HDD диском имя раздела будет начинаться с /dev/sd*. Например: /dev/sda или /dev/sdb и так далее
Шаг 3. Монтирование файловой системы
Теперь вам предстоит смонтировать вашу корневую файловую систему в каталог /mnt:
Кроме того нужно смонтировать раздел boot. Например, если бы он у меня находился по адресу /dev/nvme0n1p1:
mount /dev/nvme0n1p1 /mnt/boot
Шаг 4. Подготовка к входу в систему
Чтобы восстановить загрузчик Linux мы будем использовать вашу основную систему Linux, запущенную на ядре от LiveCD. Такую возможность предоставляет команда chroot. Но перед тем, как ее использовать нужно вручную подключить к вашей корневой ФС, смонтированной в /mnt все необходимые файловые системы взаимодействия с ядром — /dev, /sys, /proc:
sudo mount —bind /dev /mnt/dev
sudo mount —bind /sys /mnt/sys
sudo mount —bind /proc /mnt/proc
Шаг 5. Вход в окружение системы
Для входа в окружение вашей системы используйте команду:
Первый параметр указывает папку, в которую была смонтирована корневая файловая система, а второй — оболочка, используемая для интерпретации команд пользователя.
Затем выполните эти команды для загрузки и обновления переменных профиля:
Теперь вы находитесь в Linux Mint, и можете выполнять почти все его программы, разумеется, недоступны сервисы, поскольку во время загрузки не использовалась система инициализации, а также как следствие, недоступно графическое окружение.
Шаг 6. Восстановление Grub2
Теперь восстановление Grub в Linux Mint. Просто выполните следующие команды. Первая, для переустановки загрузчика на жесткий диск:
Здесь /dev/sd* — имя вашего жесткого диска.
Теперь создадим новый конфигурационный файл:
sudo grub2-mkconfig -o /boot/grub/grub.cfg
Путь к конфигурационному файлу может немного отличаться, так что будьте внимательны.
Еще можно использовать команду:
Но она работает только в Ubuntu и основанных на ней дистрибутивах.
Шаг 7. Готово
Выйдите из окружения chroot командой:
И перезагрузите компьютер:
Восстановление Grub2 без LiveCD
В некоторых случаях повреждения Grub не вызывает полную невозможность загрузки. Например, когда загрузочный код в MBR цел, но программа не может получить доступ к файлам на диске. Тогда загрузчик открывает вместо меню некое подобие терминала с сообщением: Minimal BASH like line editing is supported. С помощью этого терминала мы можем попытаться загрузить систему. Восстановление grub2 без LiveCD не такая уж и сложная задача, хотя, это сложнее, чем первый способ.
Все что вам потребуется — это знать на каком устройстве расположена система и само ядро Linux. Синтаксис и команды очень похожи на обычные команды bash, но немного отличаются по назначению. В начальном режиме восстановления доступны только несколько команд это ls, insmod, set и unset.
Чтобы посмотреть список подключенных к компьютеру дисков просто выполните:
(hd2,msdos1, hd2,msdos2, hd2,msdos3, hd2,msdos4)
Важно отметить, что в grub диски и разделы именуются немного по другому. Здесь каждый жесткий диск имеет название hd и номер диска, например, hd0 или hd1. Разделы именуются начиная с единицы.
Вы можете работать только с одним разделом в определенный момент. Чтобы установить раздел, с которым нужно работать, нужно указать его в переменной root. Для установки переменных окружения используется команда set. Например, у если у меня файлы загрузчика grub находятся на /dev/sdc2, то получится hd2,2:
Загрузим нормальную оболочку grub:
insmod ext2
insmod normal
normal
После этого можно найти и запустить ядро. Для этого используйте команду linux. Обычно ядро находится папке /boot:
Теперь, когда система загрузится, вам останется только открыть терминал, и выполнить следующие команды, чтобы завершить восстановление загрузчика linux mint:
sudo grub2-mkconfig -o /boot/grub/grub.cfg
Где sd* — имя вашего диска, на котором установлена система. Обратите внимание, что нужно именно имя диска, а не раздела, никакие цифры добавлять не надо. Вот и все.
Восстановление в Boot Repair
Наверное самый простой способ восстановить загрузчик Grub — это использовать утилиту Boot Repair. Для её запуска вам понадобится LiveCD с Ubuntu или другим дистрибутивом. Сначала загрузитесь в Live среду, как описано в первом методе, затем добавьте PPA к системе:
sudo add-apt-repository -y ppa:yannubuntu/boot-repair
После этого установите утилиту:
sudo apt install boot-repair
Далее для восстановления загрузчика достаточно нажать кнопку Рекомендуемый способ восстановления:
Затем просто дождитесь завершения процесса восстановления:
После этого компьютер можно перезагружать и всё будет работать.
Выводы
Теперь восстановление загрузчика linux mint не вызовет у вас проблем в любых обстоятельствах, независимо от того, есть ли у вас диск с другим дистрибутивом или нет. Если остались вопросы, напишите в комментариях!
Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.
Введение
При замене таблицы разделов диска формата MBR на таблицу разделов диска формата GPT могут возникнуть проблемы с загрузкой ОС из-за отсутствия дискового раздела grub, имеющегося только для таблицы разделов MBR. Далее приводится процедура установки раздела grub для таблицы разделов GPT, в том числе для загрузки ОС средствами UEFI.
Установка пакетов
Если система загружается, то:
Если система не загружается, то указанные выше команды выполнить через режим восстановления. После входа в режим восстановления:
- Удалить ненужные пакеты (команда приведена выше);
После назначения сетевого адреса установить пакеты GRUB для EFI (команда приведена выше).
Создание свободного места для дискового раздела grub
Данные шаги необходимо выполнить в случае отсутствия свободного неразмеченного места на диске. При возможности использовать Live-образ ОС выделение места можно выполнить загрузившись с этого образа и применив графический редактор дисков gparted.
Если на диске имеется раздел подкачки (swap), то для размещения дискового раздела grub этот раздел можно удалить или уменьшить и, при необходимости, использовать в дальнейшем размещение областей подкачки в файлах (см. Область подкачки (swap): особенности применения и обеспечения безопасности).
Независимо от выбранного метода перед выполнением дальнейших действий рекомендуется сделать резервную копию данных (с помощью штатных средств ОС Astra Linux или, в случае если система не загружается, загрузившись с Live-образа). При выполнении дальнейших действий следует соблюдать осторожность, так как ошибки выполнения могут повлечь потерю данных.
Рекомендованный размер дискового раздела grub — от 200МБ (возможно и меньше, но это может привести к проблемам в последующих обновлениях).
GNU Parted 3.2 Using /dev/sda Welcome to GNU Parted! Type 'help' to view a list of commands. (parted) resizepart Partition number? 1 End? [14,0GB]? 13800 Warning: Shrinking a partition can cause data loss, are you sure you want to continue? Yes/No? yes (parted) quit
в примере выше дисковый раздел номер 1 на устройстве /dev/sda (исходный размер 14,0GB) уменьшается до размера 13,800KB;
Создание дискового раздела для EFI без использования Live-CD
После запуска интерпретатора для удобства работы перейти в терминал с помощью клавиш «Alt+Ctrl+F2»:
Метка может быть произвольной, в примере использована метка EFI-SYstem;
/dev/disk/by-partlabel/EFI-system /boot/efi vfat defaults 0 2
Создание дискового раздела для EFI с использованием Live-CD
- Выполнить перезагрузку и осуществить вход в систему с Live-CD;
С помощью Gparted создать раздел 100Мб с файловой системой FAT32 и флагом ESP:
На приведенном выше снимке экрана выставлен флаг boot. Использование этого флага не обязательно.
UUID= /boot/efi vfat defaults 0 0
Восстановление GRUB EFI в режиме восстановления
- Перезагрузить систему и войти в режиме восстановления в UEFI;