В Arch Wiki есть замечательная документация по этому вопросу:
https://wiki.archlinux.org/index.php /GRUB#Installation_2
https://wiki.archlinux.org/index.php/Dual_boot_with_Windows#Installation
https://wiki.archlinux.org/index.php/GRUB#Dual-booting
Windows должен был уже создать системный раздел EFI на / dev / sda1, поэтому вам не нужно его создавать.
Единственное надежное решение, которое я нашел для своего дела. Создание загрузочной Windows в Windows.
Если вы собираетесь загружать компьютер на базе UEFI, просто смонтируйте ISO Windows (убедитесь, что это ISO с форматом UDF) и скопируйте все файлы на USB-накопитель. Если накопитель имеет формат FAT32, компьютер с UEFI распознает его и предложит возможность загрузки с него.
С другой стороны, для машины на базе BIOS лучший вариант - вручную настроить syslinux на цепную загрузку Windows. Я пробовал это на Windows 8, но еще не на 10. /dev/sdf
- это ваш USB-накопитель.
syslinux -i /dev/sdf1
(первый раздел на USB-накопителе, вы можете проверить на lsblk
)dd if=/usr/lib/syslinux/bios/mbr. bin of=/dev/sdf bs=4M
boot/syslinux
*. c32
файлы из /usr/lib/syslinux/bios
в каталог boot/syslinux
на USBСоздайте текстовый файл syslinux.cfg
на boot/syslinux
с текстом
LABEL win10
MENU LABEL Boot Windows 10 install
COM32 /boot/syslinux/chain.c32
APPEND label=win7fs ntldr=/bootmgr
Edit: Я не уверен, куда Debian помещает файлы syslinux; вы можете найти их с помощью find / -name "mbr. bin" 2> /dev/null
Я попробовал решение Win7, описанное Microsoft, на компьютере с Windows:
https://www.microsoft.com/en-us/download/windows-usb-dvd-download-tool
и получил
0x80080005 error
поэтому перешел к Debian Stretch 9, чтобы попытаться собрать загрузочный USB-накопитель Windows 10 с помощью ISO-образа колледжа/школы e5.onthehub.com.
Использование dd
абсолютно не работает для Windows 10. Это работает только для ОС Linux. Используйте:
dd if=my-linux-os.iso of=/dev/sdX bs=4M
Примечание :Никогда не пытайтесь писать в /dev/sdX1
где X={a,b,c or d}
и всегда проверяйте, не перезаписываете ли вы свой жесткий диск, который обычно /dev/sda
или /dev/sdb
!
Для Windows 10 можно использовать WoeUSB, но не из репозиториев apt/yum. Эти устарели, по крайней мере, для Debian 9. Вместо этого используйте:
git clone https://github.com/slacka/WoeUSB.git
Затем следуйте инструкциям в конце :
.https://github.com/slacka/WoeUSB
Сначала должны быть установлены все необходимые компоненты, такие как gparted и т. д.
В конце процесса я также обнаружил, что должен запускать woeusb с помощью sudo. Так что вы просто используете:
sudo woeusb --device local/of/my/windows-10-image.iso /dev/sdX
и вуаля, все работает блестяще. В моем случае мой жесткий диск был /dev/sda
, а мой USB-накопитель был /dev/sdb
, поэтому я снова записал ISO на /dev/sdb
(, будьте осторожны, вы не хотите случайно перезаписать свою ОС ). Затем я установил его на материнскую плату MSI военного класса с подключенным жестким диском на 2 ТБ без параметров быстрой загрузки в BIOS, и он просто работает. Сначала я включил абсолютно все опции UEFI, чтобы привести их в нужное состояние.
У меня также были проблемы во время установки: система постоянно зависала при использовании учетной записи электронной почты Gmail для входа и при подключении интернет-кабеля при втором перезапуске машины (в процессе установки ).Если у вас есть эта проблема, отключите Интернет, перезагрузите компьютер, создайте общую учетную запись, войдите в систему, перезапустите с помощью интернет-кабеля
FAT32 работает только с труднодоступным изображением MS 2018 -, а exfat создает проблемы. После множества сложных попыток, которые не сработали, это двухэтапное решение удалось :
.Выполнить
woeusb --partition Win10_1909_Norwegian_x64.iso /dev/sdX1
Чтобы заставить woeusb
работать, я установил woeusb и grub2. Grub2 — обходной путь для этого:
grub2-install: error: /usr/lib/grub/i386-pc/modinfo.sh doesn't exist. Please specify `--target` or `--directory`.
Я думаю, что Woeusb следует переписать, чтобы найти правильный каталог. В моей системе был файл /usr/lib/grub/x86_64-efi/modinfo.sh
из пакета grub2-efi
.
В конце концов, этот подход не не сработал для меня. Может я что-то упустил, не знаю!
Такой подход может оказаться полезным:
https://linuxhint.com/create_windows_10_installer_usb_linux/
В приведенном выше подходе при использовании команды cfdisk
пометьте раздел как Bootable
, чтобы получить Attribute: 80
.
Такой подход не не работал. BIOS определяет USB-устройство как загрузочное, но при выборе USB в меню загрузки отображается пустой экран перед повторным переходом к параметрам BIOS.
Объединив этот пост и тот , я попробовал этот подход, замените /dev/sd?
на узел вашего устройства:
sudo dd bs=4M if=/dev/zero of=/dev/sd? conv=fdatasync status=progress
для очистки USB-устройства sudo cfdisk /dev/sd?
и создайте раздел типа b W95 FAT 32
. Сделайте егозагрузочнымт.е. он должен быть помечен атрибутом 80 sudo mkfs.ntfs /dev/sd?1
, чтобы создать файловую систему NTFS для раздела signle, созданного на последнем шаге. Если вы хотите, чтобы это было быстрее, используйте его с опцией -Q
sudo dd bs=4M if=/path/to/Win10_*.iso of=/dev/sdc conv=fdatasync status=progress
для переноса содержимого на загрузочное USB-устройство sudo sync
В какой-то момент мое USB-устройство емкостью 30 ГБ перестало работать. Он выглядел как сломанный! Однако после того, как он остыл и обнулил все данные внутри с помощью команд типа sudo dd if=/dev/zero of=/dev/sd?
, он снова заработал =)
Я следовал подходу @user645644 вплоть до пункта 3
В процессе копирования появилось одно сообщение об ошибке, размер install.wim в папке с исходниками составляет 5,3 ГБ, что слишком много для файловой системы FAT32.
Я пропустил это сообщение об ошибке, и больше ошибок не было. Я просмотрел исходный код woeusb и разделил копию исходного файла install.wim на два файла install.swm, install.swm и install2.swm, используяwimsplit install.wim install.swm 4095
wimsplit из пакета wimlib.utils в Fedora
Затем я удалил ошибочную копию файла install.wim и заменил ее двумя файлами install.swm
Сработало!