Переустановка GRUB: различия между версиями

Материал из ALT Linux Wiki
Нет описания правки
 
(не показано 8 промежуточных версий этого же участника)
Строка 1: Строка 1:
==var1 Автоматическое восстановление==
==var1 Автоматическое восстановление (MBR/UEFI)==
MBR или UEFI:
MBR или UEFI:
* С использованием [[Rescue|ALT Linux Rescue]]:


После загрузки Rescue-образа выполните команду:
После загрузки Rescue-образа выполните команду:
Строка 6: Строка 8:
Система автоматически найдет систему и установит загрузочную запись в MBR/UEFI.
Система автоматически найдет систему и установит загрузочную запись в MBR/UEFI.


==v2 Ручное восстановление==
==v2 Ручное восстановление (MBR/UEFI)==
===MBR===
===MBR===
====С автоматическим монтированием====
* Если использован [[Rescue|ALT Linux Rescue]]:
* Если использован [[Rescue|ALT Linux Rescue]]:
  mount-system
  mount-system
  chroot /mnt/system1
  chroot /mnt/system1
* Если в используемом LiveCD нет mount-system, делаем самостоятельно (предполагая/зная, что корень на /dev/sda2):
 
После того как проведены подготовительные действия и сделан сhroot, необходимо выполнить
<source lang="bash">grub-mkconfig -o /boot/grub/grub.cfg
grub-install /dev/sda # заменить /dev/sda на то устройство, куда хочется установить GRUB</source>
 
После этого выходим из chroot и перезгружаемся.
exit
reboot
 
====С ручным монтированием====
* Если в используемом LiveCD нет mount-system, делаем самостоятельно (предполагая/зная, что корень на /dev/sda2).
 
Если не знаете, какая структура дисков, введите {{cmd|fdisk -l}}.
 
Монтируем раздел с системой:
  mount /dev/sda2 /mnt  
  mount /dev/sda2 /mnt  
Монтируем системные разделы:
  mount -o bind /dev /mnt/dev
  mount -o bind /dev /mnt/dev
  mount -o bind /proc /mnt/proc
  mount -o bind /proc /mnt/proc
  mount -o bind /run /mnt/run
  mount -o bind /run /mnt/run
  mount -o bind /sys /mnt/sys
  mount -o bind /sys /mnt/sys
Переходим в смонтированную систему:
  chroot /mnt/ /bin/bash
  chroot /mnt/ /bin/bash
Если есть отдельный раздел с /boot, монтируем его в точку /boot
mount /dev/sda2 /boot


После того как проведены подготовительные действия и сделан сhroot, необходимо выполнить
После того как проведены подготовительные действия и сделан сhroot, необходимо выполнить
Строка 23: Строка 45:
grub-install /dev/sda # заменить /dev/sda на то устройство, куда хочется установить GRUB</source>
grub-install /dev/sda # заменить /dev/sda на то устройство, куда хочется установить GRUB</source>


<!--===UEFI===
После этого выходим из chroot и перезгружаемся.
exit
reboot
===UEFI===
====С автоматическим монтированием====
Если использован [[Rescue|ALT Linux Rescue]]:
mount-system
chroot /mnt/system1


если же используется EFI-режим, может потребоваться восстановить загрузчик в ESP-разделе (EFI System Partition), который монтируется в /boot/efi:
После того, как проведены подготовительные действия и сделан chroot, необходимо выполнить:
grub-install


  mount -a # достаточно смонтировать точку монтирования /boot/efi
После этого выходим из chroot и перезгружаемся.
  grub-efi-autoupdate
  exit
  reboot


Если при этом выдаётся следующая ошибка:
<!-- ====С ручным монтированием====
{{Attention|Данный вариант пока предназначен только для тестирования!}}
* Если в используемом LiveCD нет mount-system, делаем самостоятельно (предполагая/зная, что корень на /dev/sda3, а EFI-раздел на /dev/sda1).


Installing for x86_64-efi platform.
Если не знаете, какая структура дисков, введите {{cmd|fdisk -l}}.
EFI variables are not supported on this system.
EFI variables are not supported on this system.
grub-install: error: efibootmgr failed to register the boot entry: No such file or directory.
то необходимо перед вызовом grub-efi-autoupdate сделать следующее:


  mount -t efivarfs efivarfs /sys/firmware/efi/efivars
Монтируем окружение EFI:
  mount -t efivarfs none /sys/firmware/efi/efivars  
Монтируем раздел с системой:
mount /dev/sda3 /mnt
Монтируем раздел с EFI:
mount /dev/sda1 /mnt/boot/efi
Монтируем системные разделы:
mount --bind /dev /mnt/dev
mount --bind /dev/pts /mnt/dev/pts
mount --bind /proc /mnt/proc
mount --bind /sys /mnt/sys
Переходим в смонтированную систему:
chroot /mnt
После того как проведены подготовительные действия и сделан сhroot, необходимо выполнить
grub-mkconfig -o /boot/grub/grub.cfg
grub-install --target=x86_64-efi /dev/sda
grub-install --recheck /dev/sda
Выходим из chroot:
exit
Отмонтируем разделы:
umount /mnt/sys
umount /mnt/proc
umount /mnt/dev/pts
umount /mnt/dev
umount /mnt/boot/efi
umount /mnt
После этого выходим из chroot и перезгружаемся.
exit
reboot
-->
-->
Источник: [[Grub]]
==v3==
<ol>
<li>Просмотрите список дисков/разделов
<pre>
# fdisk -l
/dev/sda1 *
/dev/sda2
</pre>
Если список слишком большой, воспользуйтесь командой more:
# fdisk -l | more
</li>
<li>Смонтируйте раздел/диск с Linux
<pre># mount /dev/sda2 /mnt</pre>
</li>
<li>
Для переустановки/восстановления GRUB выполните:
<pre>grub-install --root-directory=/mnt /dev/sda</pre>
Если вы хотите установить загрузчик на расширенный раздел, добавьте ключ '''--force'''.
<pre>grub-install --force --root-directory=/mnt /dev/sda2</pre>
</li>
<li>
Если так же нужно обновить меню GRUB:
<pre>update-grub --output=/mnt/boot/grub/grub.cfg</pre>
</li>
</ol>
Источник: [http://help.ubuntu.ru/wiki/%D0%B2%D0%BE%D1%81%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5_grub help.ubuntu.ru]


{{Category navigation|title=Помощь по ALT Linux Rescue|category=Rescue manuals|sortkey={{SUBPAGENAME}}}}
{{Category navigation|title=Помощь по ALT Linux Rescue|category=Rescue manuals|sortkey={{SUBPAGENAME}}}}
[[Category:Rescue manuals]]
[[Category:Rescue manuals]]
{{Category navigation|title=GRUB|category=GRUB|sortkey={{SUBPAGENAME}}}}
{{Category navigation|title=GRUB|category=GRUB|sortkey={{SUBPAGENAME}}}}

Текущая версия от 15:24, 10 июня 2024

var1 Автоматическое восстановление (MBR/UEFI)

MBR или UEFI:

После загрузки Rescue-образа выполните команду:

fixmbr

Система автоматически найдет систему и установит загрузочную запись в MBR/UEFI.

v2 Ручное восстановление (MBR/UEFI)

MBR

С автоматическим монтированием

mount-system
chroot /mnt/system1

После того как проведены подготовительные действия и сделан сhroot, необходимо выполнить

grub-mkconfig -o /boot/grub/grub.cfg
grub-install /dev/sda # заменить /dev/sda на то устройство, куда хочется установить GRUB

После этого выходим из chroot и перезгружаемся.

exit
reboot

С ручным монтированием

  • Если в используемом LiveCD нет mount-system, делаем самостоятельно (предполагая/зная, что корень на /dev/sda2).

Если не знаете, какая структура дисков, введите fdisk -l.

Монтируем раздел с системой:

mount /dev/sda2 /mnt 

Монтируем системные разделы:

mount -o bind /dev /mnt/dev
mount -o bind /proc /mnt/proc
mount -o bind /run /mnt/run
mount -o bind /sys /mnt/sys

Переходим в смонтированную систему:

chroot /mnt/ /bin/bash

Если есть отдельный раздел с /boot, монтируем его в точку /boot

mount /dev/sda2 /boot

После того как проведены подготовительные действия и сделан сhroot, необходимо выполнить

grub-mkconfig -o /boot/grub/grub.cfg
grub-install /dev/sda # заменить /dev/sda на то устройство, куда хочется установить GRUB

После этого выходим из chroot и перезгружаемся.

exit
reboot

UEFI

С автоматическим монтированием

Если использован ALT Linux Rescue:

mount-system
chroot /mnt/system1

После того, как проведены подготовительные действия и сделан chroot, необходимо выполнить:

grub-install

После этого выходим из chroot и перезгружаемся.

exit
reboot