Что я должен сделать перед Windows 7 двойной загрузки и Debian на EFI?

(make clean && make DISABLE_ID3TAG=1 CFLAGS="-O2 -DNDEBUG -W64") 2>&1 | myprogram
10
08.04.2014, 04:06
4 ответа

Удостоверьтесь, что UEFI не собирается блокировать Linux из Вашей машины; существует, вероятно, установка на тот эффект в BIOS. Проверьте и проверьте наверняка. Я перепроверил бы эту точку с руководством и с производителем, если Вы должны.

Была некоторая расширенная дискуссия об этом; ZDNet имел несколько статей. Вот статья с 21 сентября 2011 и один с 23 сентября.

Во-вторых, на основе исторических данных, можно хотеть установить Windows сначала. Традиционно, Windows просто предполагает, что это - единственная ОС на машине - таким образом, это вытирает любые данные начальной загрузки, связанные с Linux. Это может отличаться для UEFI, я не знаю.

2
27.01.2020, 20:01

Править: Когда я записал этот ответ, очень немного дистрибутивов, поставленных с EFI_STUB, настроили ядро, таким образом, нужно было создать пользовательский. В наше время большинство дистрибутивов поставляет соответственно настроенное ядро, и сделанное на заказ не требуется больше. В этом случае разделы “Настраивают Ваши разделы”, и “Установка вещей” является интересными, “Требования” и “Компиляция ядра” могут быть пропущены.

Я не знаю, как Windows обрабатывает UEFI, но со стороны Debian это довольно просто.

Настройте свои разделы

Используйте схему выделения разделов GPT, не MBR.

Для начальной загрузки от раздела GPT с UEFI, специализированный раздел начальной загрузки получает мандат, названный Системным разделом EFI (ESP). Это не обязательно, но самый совместимый путь состоит в том, чтобы использовать раздел FAT32. Размер 200 мебибайт должен быть хорошо для большинства случаев.

Для регистрации раздела как ESP это должно быть отмечено с помощью boot флаг. В отличие от схем MBR, флаг начальной загрузки только используется для указания на ESP, не разделы, чтобы смочь загрузиться от.

UEFI использует структуру каталогов \EFI\<vendor>\<application>.efi сохранить приложения UEFI. Разделитель каталога обозначен обратной косой чертой, даже на Linux. могло быть имя распределения, фактическое значение не относится к UEFI.

Приложения могут быть системными утилитами как средства проверки памяти или оболочка UEFI. Это может также быть загрузчик ОС или сама операционная система. Эти приложения должны быть зарегистрированы в UEFI, чтобы смочь быть запущенными во время начальной загрузки.

Требования

Версия ядра Linux> =3.3 может быть загружена непосредственно UEFI. Ядро может действовать как свой собственный загрузчик. Это называют EFISTUB. Следующие конфигурации ядра необходимы.

CONFIG_EFI=y
CONFIG_EFI_PARTITION=y
CONFIG_EFI_STUB=y
CONFIG_RELOCATABLE=y
CONFIG_FB_EFI=y
CONFIG_FRAMEBUFFER_CONSOLE=y
CONFIG_EFI_VARS=m

Ядро с этой конфигурацией в настоящее время находится не в стабильном Debian, все же. Можно или испечь собственное ядро или использовать то от экспериментального дерева в этом случае, можно пропустить следующий абзац.

Компиляция ядра

(вероятно, не необходимый больше, посмотрите редактирование),

Если Вы решаете скомпилировать ядро, вот короткие команды, как сделать это. При столкновении с проблемами существует много информации, доступной о том, как скомпилировать ядро.

Получение источника

git clone git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git

Проверьте одну конкретную версию

git checkout v3.6

Конфигурирование ядра

make menuconfig

Установите настройки, которые необходимы в Вашей системе или оставляют ее, как это - если у Вас нет ничего для настройки. Это пишет конфигурацию ядра в файл .config.

Удостоверьтесь, что настройки из предыдущего абзаца установлены. Также имеет смысл выбирать CONFIG_INPUT_EVBUG=n. Иначе Ваши журналы будут заполнены гибибайтом спама.

Создание ядра

INSTALL_MOD_STRIP=1 make-kpkg --uc --us binary-arch

Пакеты создаются в родительском каталоге.

Установка ядра

dpkg -i linux-image-3.5.0_Custom.deb linux-headers-3.5.0_Custom.deb

Здание initramfs

mkinitramfs -o /boot/initrd.img-3.6.0-amd64 3.6.0

3.6.0 версия ядра. Это принимает значение по умолчанию к рабочему ядру, которое не является хорошим выбором, так как Вы все еще выполняете старое ядро.

Установка вещей

Чтобы смочь загрузить ядро Linux, это должно быть скопировано в ESP вместе с initramfs. Учитывая, что ESP смонтирован в /boot/efi

/boot/efi/EFI/debian/vmlinuz-3.6.0.efi
/boot/efi/EFI/debian/initrd.img-3.6.0

Примечание: Гарантировать совместимость с большинством систем extenstion efi должен быть добавлен к ядру.

Теперь ядро может быть зарегистрировано в UEFI. Мы используем инструмент efibootmgr для этого.

echo "root=UUID=3a4287b6-b3a7-4721-da38-acc38a928278 ro rootfstype=ext4 add_efi_memmap initrd=\\EFI\\debian\\initrd.img-3.6.0" |
  iconv -f ascii -t ucs2 |
  efibootmgr \
    --create \
    --gpt \
    --disk /dev/sda \
    --part 4 \
    --label "Debian Linux kernel 3.6.0" \
    --loader "\\EFI\\debian\\vmlinuz-3.6.0" \
    --write-signature \
    --append-binary-args -

Аргумент --disk устройство, где ядро находится, не ESP. --part число раздела, где ядро находится. --label запись в меню начальной загрузки UEFI.

Для наблюдения списка доступных записей просто запуститесь efibootmgr без аргументов. Синтаксис для удаления конкретной записи

efibootmgr -b entry (hex) -B

например:

efibootmgr -b 001a -B

Эти инструкции не обрабатывают случай обновления ядра. Ядро и initramfs автоматически не копируются в ESP. Это может быть сделано с помощью короткого сценария, который копирует ядро и initramfs к ESP и выполнениям efibootmgr. Этот сценарий может быть помещен в /etc/kernel/postinst.d чтобы быть запущенным автоматически после, ядро было обновлено.

Примечание: Диспетчер начальной загрузки как GRUB не нужен, сам UEFI действует как диспетчер начальной загрузки.

Это - все, в чем Вы нуждаетесь со стороны Linux, я не знаю то, что она берет для добавления Windows.

8
27.01.2020, 20:01

Вам не обязательно нужно к Windows двойной загрузки и Linux на UEFI. Следуйте руководству для преобразования UEFI в MBR-BIOS без потери данных.

Это руководство было сделано мной. Кроме того, отнесенный блог никогда не будет удаляться. Хотя я использовал его как 10 раз без любой потери данных, я рекомендовал бы Вам скопировать свои данные перед использованием своей процедуры.

2
27.01.2020, 20:01

Я могу сердечно рекомендовать ряд статьи UEFI Rod Smith. В частности, он упоминает, что "гибридный" GPT-MBR является "опасным взломом" из-за опасностей десинхронизации.

2
27.01.2020, 20:01

Теги

Похожие вопросы