Я пытаюсь выполнить двойную загрузку Windows 8 и Ubuntu 12.10 на моем Surface Pro и хотел бы использоватьпересмотретьдля моего менеджера загрузки.
Я не хочу когда-либо устанавливать GRUB, в том числе во время установки Ubuntu, так как мой прошлый опыт попыток сделать это на этом устройстве привел к повреждению загрузчика Windows, что может фактически вывести устройство из строя, так как, похоже, они нужны для загрузки с USB. Я знаю об успехеДвойная загрузка Surface Pro с Ubuntu?, но хотите полностью отказаться от GRUB.
На данный момент я попробовал следующее:
- Установите и проверьте, что rEFInd работает только на Windows 8 без проблем.
- Установите Ubuntu 12.10 из «ubiquity -b», чтобы предотвратить установку GRUB
- Убедитесь, что я все еще могу нормально загрузить Windows 8
К сожалению, это, похоже, не генерирует никаких заглушек .efi для Ubuntu, поэтому я не уверен, что делать на этом этапе. Что я могу сделать, чтобы сгенерировать их без установки GRUB или любого другого загрузчика? Имейте в виду, что на этом этапе я не могу загрузиться напрямую в Ubuntu, только живую установку, если только нет чего-то еще, что я должен сделать во время фактической установки.
Повторюсь, я хочу сделать следующее: установить Ubuntu без GRUB, сгенерировать заглушки efi для Ubuntu, никогда не трогать прошивку efi или загрузочный каталог Windows, а затем положиться на rEFInd, который найдет эти заглушки во время загрузки.
решение1
Во-первых, я предполагаю, что под ".efi stubs" вы подразумеваете файлы с .efi
расширениями на системном разделе EFI (ESP). Это файлы программ EFI -- чаще всего загрузчики, но иногда также программы и утилиты.
Если вы хотите загрузить Windows и Ubuntu через rEFIndбезиспользуя GRUB, то единственные программы EFI, которые вам нужно иметь на ESP, это загрузчик Windows (устанавливается Windows), rEFInd ( refind_x64.efi
) и драйвер файловой системы EFI для любой файловой системы, которую вы использовали с Ubuntu (вероятно ext4_x64.efi
, в drivers
или drivers_x64
подкаталоге каталога, в котором находится refind_x64.efi
). Драйвер ext4fs позволит EFI, а следовательно, и rEFInd, читать ядро Linux на основном разделе Linux. Ядра Linux, начиная с версии 3.3.0, включают загрузчик EFI, который является способом превратить ядро Linux в свой собственный загрузчик. Таким образом, с rEFInd и драйвером ext4fs на ESP, rEFInd может запускать ядро Linux непосредственно из раздела Linux. Однако вам понадобится еще одна вещь: файл /boot/refind_linux.conf
для хранения параметров для Linux. Минимальный пример выглядит так:
"Boot with normal options" "ro root=/dev/sda8"
"Boot into single-user mode" "ro root=/dev/sda8 single"
Этот пример загружает установку на /dev/sda8
. Вы можете добавить больше параметров, чтобы он отображал графический дисплей запуска или по другим причинам, но вышеприведенный вариант (с измененным root=
значением, по всей вероятности) будет работать с большинством систем.
Вариант этого подхода — скопировать ядро(ядра) в ESP (вероятно, в каталог ESP EFI/ubuntu
) инетустановить драйвер файловой системы Linux. Это имеет некоторые преимущества на некоторых системах, но требует копирования ядра каждый раз, когда система пакетов обновляет его. Если вы сделаете это таким образом, вы поместите refind_linux.conf
в каталог на ESP, где вы храните свои ядра.