GNU Grand Unified Bootloader (GRUB) — это мощная и гибкая утилита, которая связывает BIOS вашей материнской платы с ядром вашей операционной системы. Он работает путем загрузки небольшой программы в память вашей материнской платы, которую она использует для загрузки более крупного мультизагрузочного двоичного файла.
Однако бывают случаи, когда GNU GRUB не может загрузить ядро вашей операционной системы. Например, установка двойной загрузки Linux и Windows часто приводит к уничтожению загрузчика GNU. В этом руководстве показано, как восстановить систему, переустановив GRUB с использованием некоторых наиболее популярных дистрибутивов Linux.
Восстановление GRUB в Ubuntu и Debian
Один из самых быстрых способов переустановить GNU GRUB в Ubuntu и Debian — использовать загрузка живой копии любого из дистрибутивов. Это позволит вам смонтировать корневой раздел вашей системы и использовать двоичные файлы GRUB живого дистрибутива для воссоздания загрузчика вашей системы.
Примечание : после з
Contents
Восстановление GRUB в Ubuntu и Debian
Ubuntu», чтобы получить доступ к рабочему столу. Не нажимайте «Установить Ubuntu».- Откройте терминал в вашей рабочей среде дистрибутива.
- Найдите имя устройства корневого раздела вашей системы. Это можно сделать, выполнив следующую команду:
sudo fdisk -l | grep "Linux filesystem$"
- Подключите корневой раздел вашей системы к каталогу «/mnt» вашего действующего дистрибутива:
sudo mount /dev/sda1 /mnt
- Переустановите двоичные файлы GRUB:
sudo grub-install --force --boot-directory=/mnt/ /dev/sda1
- Выключите компьютер. Извлеките USB-накопитель и загрузите его снова. Должна загрузиться ваша ОС Linux.
- Обновите файл конфигурации GRUB вашей системы, чтобы отразить текущее состояние вашего компьютера:
sudo update-grub
Совет: хотя переустановка GRUB исправит большинство проблем с мультизагрузкой, новичкам командная строка может показаться сложной. Для этого вам также может быть исправить GRUB с помощью графической утилиты восстановления загрузки .
Восстановление GRUB в Arch Linux
Помимо Ubuntu и Debian, для восстановления загрузчика также можно использовать живую копию Арч Линукс . Одним из преимуществ этого является то, что работающий Arch Linux не использует какой-либо графический дисплей, поэтому вы можете легко восстановить GRUB даже на автономных машинах через SSH.
- Определите корневой раздел вашей системы, используя лсблк :
lsblk
- Подключите корневой каталог к вашей рабочей среде:
mount /dev/sda1 /mnt
- Привяжите работающий системный процесс к корневому каталогу вашей системы:
mount --bind /sys /mnt/sys mount --bind /proc /mnt/proc mount --bind /run /mnt/run mount --bind /dev /mnt/dev
chroot /mnt /bin/sh -i
- Переустановите двоичные файлы загрузчика вашей системы, выполнив следующую команду:
/sbin/grub-install --target=i386-pc /dev/sda
- Перезагрузите файл конфигурации GRUB вашей системы:
/sbin/grub-mkconfig > /boot/grub/grub.cfg
- Нажмите Ctrl+ D, чтобы выйти из корня вашей системы.
- Протестируйте новый загрузчик, перезагрузив систему:
reboot
Полезно знать: Arch Linux может оказаться сложной операционной системой для начинающего пользователя. Узнайте, как это работает и как это можно сделать установите его даже без обширных знаний Linux .
Восстановление GRUB в Fedora
Как и в Ubuntu и Debian, восстановить Grub в Fedora одинаково просто.
- Найдите корневой раздел вашего компьютера:
sudo fdisk -l | grep "Linux filesystem$"
<ол старт="2">
sudo mount /dev/sda3 /mnt sudo mount --bind /sys /mnt/root/sys sudo mount --bind /proc /mnt/root/proc sudo mount --bind /run /mnt/root/run sudo mount --bind /dev /mnt/root/dev
- Переместите корневую файловую систему в каталог «/mnt»:
sudo chroot /mnt/root bash mount /dev/sd3 / mount /dev/sda2 /boot
- Удалите все существующие файлы конфигурации загрузчика в вашей системе:
rm -f /etc/grub.d/* rm -f /etc/sysconfig/grub
- Создайте новый файл конфигурации GRUB для вашей системы:
grub2-mkconfig -o /boot/grub2/grub.cfg
- Установите GRUB в загрузочный раздел вашего компьютера:
grub2-install --target=i386-pc /dev/sda
К вашему сведению: Systemd-boot — это двоичный файл загрузчика нового поколения для Linux. Узнайте, что делает его особенным и чем systemd-boot отличается от почтенного GRUB .
Часто задаваемые вопросы
Можно ли восстановить GRUB, если моя система использует LVM?
Да. Вы все равно можете восстановить GRUB, даже если ваша система использует LVM. Для этого запустите ls /dev/mapper/*--vg-root
, чтобы определить абсолютный путь к файлу корневого раздела вашего компьютера. Используйте этот абсолютный путь вместо традиционного «/dev/sda1».
Уничтожит ли восстановление GRUB другие операционные системы на моем диске?
Нет. Загрузчик по своему замыслу знает только, где найти первые несколько байтов ядра операционной системы. Замена загрузчика не повлияет ни на одну существующую операционную систему на вашем диске.
Можно ли переустановить GRUB в системе UEFI?
Да. Для этого вам необходимо убедиться, что вы правильно смонтировали раздел «/boot/efi» вашей системы UEFI. Вам также необходимо изменить значение флага --boot-directory
в grub-install
на «/boot/efi».
Для Fedora вам также необходимо изменить флаг -o
для grub2-mkconfig
на
“/boot/efi/EFI/fedora/grub.cfg”.
Изображение предоставлено: Unsplash . Все изменения и скриншоты Рамсеса Реда.