5

Вот моя текущая таблица разделов GPT/MBR:

Current GPT partition table:
 #      Start LBA      End LBA  Type
 1             40       409639  EFI System (FAT)
 2         409640    663646255  Mac OS X HFS+
 3      663646256    664915791  Mac OS X Boot
 4      664915968   1164914687  Basic Data
 5     1164914688   1169649663  Linux Swap
 6     1169649664   1465149134  Unknown

Current MBR partition table:
 # A    Start LBA      End LBA  Type
 1              1       409639  ee  EFI Protective
 2         409640    663646255  af  Mac OS X HFS+
 3      663646256    664915791  ab  Mac OS X Boot
 4 *    664915968   1164914687  07  NTFS/HPFS

Выше приведена информация, полученная от «Инспектора разделов» в Mac OS X. Вот ситуация:

Partition2: у меня установлена Mac OS X 10.7 Partition4: у меня установлена Windows 8 Release Preview Partition6: у меня установлена Arch (без загрузчика)

Я установил REFIt.

Это то, что я могу сделать:

  1. Загрузитесь в Mac и Windows, используя rEFIt.
  2. Загрузитесь в настройку Arch на моем USB-накопителе и загрузитесь в установленную систему.

Это то, что я не могу сделать:

  1. Загрузитесь в установленную систему Arch и / или установите загрузчик.

Итак, что мне в основном нужно, это установить загрузчик. Я следовал инструкциям, приведенным в руководстве по Arch, но установка как grub-bios, так и grub-efi-x86_64 не работает.

  1. Установка grub-bios выдает ошибку «Не удается определить файловую систему в /dev /sda», а grub-efi-x86_64 выдает ошибку: «Неустранимо: не удалось открыть каталоги sysfs или procfs для доступа к переменным EFI. Попробуйте 'modprobe efivars' как root '. Я попробовал mod probe efivars , но это не помогло. Я получаю вышеуказанную ошибку при запуске команды:

    grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=arch_grub --recheck

Мой основной вопрос заключается в том, какие варианты мне нужно настроить для тройной загрузки ... так как я почти на месте.

PS Возможно ли мне просто загрузиться с REFIt? Например, как я мог бы сделать это из grub, указав параметры root, kernel и initrd?

1 ответ1

0

Вам не нужно устанавливать загрузчик для Arch здесь. EFISTUB был в ядре в течение длительного времени. Вы можете загрузить его непосредственно из rEFIt, хотя вы действительно должны использовать rEFInd. Также, пожалуйста, прекратите использовать GRUB 2, особенно вслепую.

  1. Поместите образ ядра Linux и initramfs (предположительно, вы загружаете initramfs, хотя, если вы действительно знаете, что делаете, возможно, нет) в ESP.
  2. Сконфигурируйте любой менеджер загрузки EFI, который вы выберете, чтобы он также позволял вам загружать Arch Linux. В моем /EFI/archlinux/archlinux.conf (как видно из Mac нет отдельного ESP, файл, включенный в /EFI/refind/refind.conf), у меня есть что-то вроде следующего.

    menuentry "Arch Linux custom kernel" {
        icon EFI/refind/icons/os_arch.png
        loader EFI/archlinux/vmlinuz-linux
        initrd EFI/archlinux/initramfs-linux.img
        options "root=/dev/mapper/fastvg-rootlv ro"
    
        submenuentry "fallback" {
            initrd EFI/archlinux/initramfs-linux-fallback.img
        }
    }
    

Отрегулируйте соответственно.

Пожалуйста, поймите, что загрузчики и менеджеры загрузки, прежде чем слепо следовать инструкциям. Вот некоторые предлагаемые чтения по EFI

efivars не использовался Arch Linux в течение относительно долгого времени. Это даже не в стандартном конфиге ядра. efivarfs уже должен быть установлен в любом случае.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .