Установка GRUB2 на GPT-диск в раздел

2

Я использую MacBook Air 2013 и пытаюсь установить Gentoo. Я уже делал это несколько раз, но я всегда использовал другие «обходные пути» для этой проблемы, такие как непосредственное использование образа ядра EFI-заглушки.

То, чего я пытаюсь добиться, - это установить GRUB на PARTITION, чтобы я не зашифровал исходную компоновку моего Macbook.

Это моя таблица разделов:

    GPT fdisk (gdisk) version 0.8.8

Partition table scan:
  MBR: protective
  BSD: not present
  APM: not present
  GPT: present

Found valid GPT with protective MBR; using GPT.
Disk /dev/sda: 236978176 sectors, 113.0 GiB
Logical sector size: 512 bytes
Disk identifier (GUID): 9DF6BE23-87E0-4602-B71F-7DAD445D5614
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 236978142
Partitions will be aligned on 8-sector boundaries
Total free space is 6 sectors (3.0 KiB)

Number  Start (sector)    End (sector)  Size       Code  Name
   1              40          409639   200.0 MiB   EF00  EFI System Partition
   2          409640       176582599   84.0 GiB    AF00  Customer
   3       176582600       177852135   619.9 MiB   AB00  Recovery HD
   4       177852136       178114279   128.0 MiB   EF00  EFI System
   5       178114280       236978142   28.1 GiB    8300  Linux filesystem

Первый раздел оригинальный ESP моего Mac (где я установил Refind) , и я хотел бы сохранить его , как это. Я пытался разместить GRUB на 4-м разделе (это vfat ), но когда я пытаюсь установить его там, я получаю:

# > grub2-install /dev/sda4    
/usr/sbin/grub2-bios-setup: warning: File system 'fat' doesnt' support embedding.
/usr/sbin/grub2-bios-setup: 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..
/usr/sbin/grub2-bios-setup: error: will not proceed with blocklists.

Я также пытался использовать

grub2-install --force /dev/sda4

но это ничего не сделало. Как я могу решить эту вещь? Спасибо!

peperunas
источник

Ответы:

0

Я решил, создав ядро ​​EFI-заглушки, а затем, загрузившись с ним, я продолжил установку grub, grub2-install --target=$arch-efi --efi-directory=$espгде $espнаходится каталог, в котором я смонтировал мой, /bootи $archархитектура моего ЦП (в моем случае x86_64. С помощью этой процедуры grub затем устанавливается в $espи grubx64.efiсоздается.

Последний шаг, который нужно сделать - это создание конфигурации:

grub2-mkconfig -o $esp

И все готово!

Итак, подведем итог:

  1. Создайте ядро ​​EFI-STUB и загрузите его
  2. Установите grub как обычно с: grub2-install --target=$arch-efi --efi-directory=$esp
  3. Создайте файл конфигурации для grub: grub2-mkconfig -o $esp
  4. Готово!
peperunas
источник