LINUX.ORG.RU

Error grub | Debian + WIndows

 , ,


0

1

Добрый день. На рабочем ноуте стоит Windows 10, когда ставил Debian то где-то провтыкал настройки grub и теперь не могу поставить выбор систем. Загрузился с LiveUSB и попробовал следующие методы:

sudo fdisk -l
/dev/sda1       2048    923647    921600   450M Windows recovery environment
/dev/sda2     923648   1128447    204800   100M EFI System
/dev/sda3    1128448   1161215     32768    16M Microsoft reserved
/dev/sda4    1161216 202933518 201772303  96.2G Microsoft basic data
/dev/sda5  202934272 204799999   1865728   911M Windows recovery environment
/dev/sda6  204802048 918083297 713281250 340.1G Microsoft basic data
/dev/sda7  918083584 925896703   7813120   3.7G Linux swap
/dev/sda8  925896704 976771071  50874368  24.3G Linux filesystem

sudo mount /dev/sda8 /mnt
sudo grub-install --root-directory=/mnt /dev/sda

Выбило ошибку:

Installing for i386-pc platform.
grub-install: warning: this GPT partition label contains no BIOS Boot Partition; embedding won't be possible.
grub-install: warning: Embedding is not possible.  GRUB can only be installed in this setup by using blocklists.  However, blocklists are UNRELIABLE and their use is discouraged..

Пробовал второй вариант:

sudo chroot /mnt
grub-install /dev/sda

такая же ошибка, может кто-то подсказать как исправить? С таким только на Debian столкнулся, ну и долго ходить с бубном не могу так как рабочий ноут, и нужно работать )

★★

Последнее исправление: TheLinuxUser (всего исправлений: 1)

У тебя GPT разметка и система грузится в EFI режиме.

Тебе нужно ставить grub для платформы efi-64.

Посмотри в документации как правильно ставить grub с указанием efi платформы. Только учти для того, что бы grub прописался в память EFI система из которой ты делаешь chroot так же должна быть загружена в EFI режиме, что бы были доступны efi vars, за подробностями читай wiki дистрибутива.

Сейчас ты по умолчанию ставить grub для платформы pc, т.е. версию загрузчика для BIOS (legacy) варианта загрузчика.

В принципе можно тоже поставить, только в этом случае тебе нужно создать отдельный gpt раздел для встраивания кода загрузчика. Только в этом случае запустить Windows (вызвать Windows загрузчик) из grub у тебя не получится.

Почитай для начала вот это:
- https://wiki.debian.org/GrubEFIReinstall;
- https://wiki.debian.org/UEFI.

Удачи.

kostik87 ★★★★★
()
Ответ на: комментарий от kostik87

Эммм, так я всё время ставил операционные системы в режиме/для режима обычного, без UEFI, и загружался с установочника без UEFI. Или здесь получается Debian стал с UEFI ?

TheLinuxUser ★★
() автор топика
Ответ на: комментарий от TheLinuxUser

Прочти ещё раз что я написал.

Повторю ещё раз, ты сейчас ставишь груб для BIOS:

Installing for i386-pc platform.

он должен ставиться на MBR разметку. Поставить его на GPT разметку тоже можно, но для этого нужно создать специальный раздел, куда будет встраиваться код загрузчика, это раздел с типом «EF02 BIOS boot partition», вот пример:

gdisk /dev/sdc
GPT fdisk (gdisk) version 0.8.1
 
Partition table scan:
  MBR: protective
  BSD: not present
  APM: not present
  GPT: present
 
Found valid GPT with protective MBR; using GPT.
 
Command (? for help): p
Disk /dev/sdc: 976773168 sectors, 465.8 GiB
Logical sector size: 512 bytes
Disk identifier (GUID): AA369F4D-37A4-4C0D-A357-DC24B99A6337
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 976773134
Partitions will be aligned on 2048-sector boundaries
Total free space is 2014 sectors (1007.0 KiB)
 
Number  Start (sector)    End (sector)  Size       Code  Name
   1            2048       828377087   395.0 GiB   8E00  Linux LVM
   2       828377088       891291647   30.0 GiB    0700  Microsoft basic data
   3       891291648       975177727   40.0 GiB    0700  Microsoft basic data
   4       975177728       976754687   770.0 MiB   8300  Linux filesystem
   5       976754688       976756735   1024.0 KiB  EF02  BIOS boot partition
   6       976756736       976773134   8.0 MiB     EF00  EFI System
 
Command (? for help): 
Сходи вот по этой ссылке: https://wiki.gentoo.org/wiki/GRUB2/ru и прочти разделы:
3 Установка загрузчика
  3.1 BIOS и MBR
    3.1.1 Разбитие для BIOS и MBR
  3.2 BIOS и GPT
    3.2.1 Разбитие для BIOS и GPT
  3.3 UEFI и GPT
    3.3.1 Разбитие для UEFI и GPT
    3.3.2 Альтернативный вариант: использование обычного расположения прошивки UEFI

Но т.к. у тебя Windows установлена в EFI режиме, то грузить и Windows и Linux из GRUB, если ты поставишь версию загрузчика для BIOS, у тебя не получится.

Нужно ставить EFI версию загрузчика для этого.

Прочти ссылки в предыдущем моём сообщении, в первой ссылке всё расписано, но грузить Live систему для chroot нужно в EFI режиме.

Прочти пожалуйста в начале написанное мной и обдумай.

Удачи.

kostik87 ★★★★★
()
Последнее исправление: kostik87 (всего исправлений: 1)

uefi читаем рукоприкладство!

piwww ★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.