Восстановление загрузчика Grub2 — различия между версиями

Материал из Rosalab Wiki
Перейти к: навигация, поиск
м
 
(не показано 6 промежуточных версий 3 участников)
Строка 32: Строка 32:
 
Дальше, надо примонтировать нужные разделы:
 
Дальше, надо примонтировать нужные разделы:
  
  sudo su
+
  sudo -i
 
  mkdir /chroot
 
  mkdir /chroot
 
  mount /dev/sd'''XX''' /chroot # В нашем примере sd'''XX''' - это sda2
 
  mount /dev/sd'''XX''' /chroot # В нашем примере sd'''XX''' - это sda2
  for i in dev sys proc; do mount --bind -v /$i /chroot/$i; done
+
  for i in dev sys proc etc/resolv.conf; do mount --bind -v /$i /chroot/$i;done
 
+
Чтобы использовать интернет-соединение в chroot нужно скопировать resolv.conf:
+
 
+
cp /etc/resolv.conf /chroot/etc/resolv.conf
+
  
 
Если после  
 
Если после  
 
  mount /dev/sd'''XX''' /chroot # В нашем примере sd'''XX''' - это sda2
 
  mount /dev/sd'''XX''' /chroot # В нашем примере sd'''XX''' - это sda2
 
возникают ошибки и у вас файловая система BTRFS, то эта команда должна иметь дополнительный вид (указываем, какой подраздел монтировать):
 
возникают ошибки и у вас файловая система BTRFS, то эта команда должна иметь дополнительный вид (указываем, какой подраздел монтировать):
  mount -o subvol=@ /dev/sd'''XX''' /chroot # В нашем примере sd'''XX''' - это sda2
+
  mount -o subvol=root /dev/sd'''XX''' /chroot # В нашем примере sd'''XX''' - это sda2
  
 
4. Теперь надо сделать chroot в установленную систему.
 
4. Теперь надо сделать chroot в установленную систему.
Строка 72: Строка 68:
 
  reboot
 
  reboot
  
Так же для восстановления загрузчика grub2 можно воспользоваться небольшим скриптом. Скачать скрипт можно по ссылке: https://forum.rosalinux.ru/download/file.php?id=12850 и rpm https://forum.rosalinux.ru/download/file.php?id=12852 <br>
+
Также, для восстановления загрузчика grub2 можно воспользоваться небольшим скриптом grub2recovery. Его можно установить из репозитория contrib командой
 +
sudo dnf in grub2recovery
 +
<!-- или скачать по ссылке: https://forum.rosalinux.ru/download/file.php?id=12856 и rpm https://forum.rosalinux.ru/download/file.php?id=12855 <br>  -->
 
О скрипте можно почитать на форуме: https://forum.rosalinux.ru/viewtopic.php?f=58&t=10649 <br>
 
О скрипте можно почитать на форуме: https://forum.rosalinux.ru/viewtopic.php?f=58&t=10649 <br>
Скрипт является разработкой сообщества и не является официальным приложением.  
+
 
 +
''* Скрипт является разработкой сообщества и не является официальным приложением.''
  
  
 
[[Категория:HOWTO]]
 
[[Категория:HOWTO]]
 
[[en:Reinstall Grub2 from a live ROSA]]
 
[[en:Reinstall Grub2 from a live ROSA]]

Текущая версия на 13:22, 13 марта 2024

Оригинал инструкции на форуме MIB (Mandriva International Backports): How to reinstall Grub2 from a live ROSA Desktop Linux


Рекомендации по восстановлению загрузочной записи Grub2 в MBR следующие:

1. Загружаемся с флешки или DVD в Live-режиме.

2. Запускаем графическую программу Gparted или Пишем в консоли от root-а:

fdisk -l

У нас выходит список разделов нашего жесткого диска (например):

Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x6e2792ad

Устр-во Загр     Начало       Конец       Блоки   Id  Система
/dev/sda1   *        2048    51552584    25775268+   7  HPFS/NTFS/exFAT
/dev/sda2        51552585   100920329    24683872+  83  Linux
/dev/sda3       100920330   103089104     1084387+  82  Linux своп / Solaris
/dev/sda4       103090176   488396799   192653312    7  HPFS/NTFS/exFAT

Также можно найти раздел в графической программе Gparted.

3. В данном примере sda это загрузочный диск, а sda2 это корневой (/root) раздел нашей установленной системы РОСА. Поскольку в разных конфигурациях буква диска может различаться, то далее будем использовать sdX и sdXX соответственно для их обозначения.

Дальше, надо примонтировать нужные разделы:

sudo -i
mkdir /chroot
mount /dev/sdXX /chroot # В нашем примере sdXX - это sda2
for i in dev sys proc etc/resolv.conf; do mount --bind -v /$i /chroot/$i;done

Если после

mount /dev/sdXX /chroot # В нашем примере sdXX - это sda2

возникают ошибки и у вас файловая система BTRFS, то эта команда должна иметь дополнительный вид (указываем, какой подраздел монтировать):

mount -o subvol=root /dev/sdXX /chroot # В нашем примере sdXX - это sda2

4. Теперь надо сделать chroot в установленную систему.

chroot /chroot

5. Внутри chroot примонтируем все записи в /etc/fstab (например, раздел /boot/efi):

mount -a

6. Затем надо установить Grub2 в MBR.

grub2-install /dev/sdX # В нашем примере sdX - это sda

В Ubuntu, Debian grub2-install заменить на grub-install.

7. После установки Grub2, нужно чтобы он нашел другие загрузочные записи на жестком диске (например Windows). Для этого дадим следующую команду:

update-grub2

В Ubuntu,Debian update-grub2 заменить на update-grub.

8. Выходим из chroot и Live-режима и перегружаем компьютер. После перезагрузки, будет меню Grub2 со списком всех ваших ОС.

exit
sync
reboot

Также, для восстановления загрузчика grub2 можно воспользоваться небольшим скриптом grub2recovery. Его можно установить из репозитория contrib командой

sudo dnf in grub2recovery

О скрипте можно почитать на форуме: https://forum.rosalinux.ru/viewtopic.php?f=58&t=10649

* Скрипт является разработкой сообщества и не является официальным приложением.