Создайте загрузочный USB-диск Windows 10 (UEFI) из Linux

24

Как я могу создать загрузочный USB-диск Windows 10 из Linux?

Пожалуйста, обратите внимание:

  • WinUSB не работает с Windows 10.
  • UNetbootin тоже не работает.
  • dd метод не сработал.

Кроме того, я попытался создать таблицу разделов GPT и один раздел типа ef00, отформатированный как fat32, а затем скопировал в него все содержимое ISO. Он загружается нормально, но когда я иду, чтобы начать установку, он показывает подсказку для медиа-диалога.

Обновить

Еще одна попытка:

  1. Создал GPT
  2. Создан FAT32 в конце диска 50 МБ
  3. Создал NTFS на оставшемся месте
  4. Поставь UEFI: NTFS на FAT32
  5. Копирование содержимого ISO в NTFS

Установка начинается нормально, но при запуске отображается ошибка 0xc0000005 (если я правильно помню).

Виктор Аурелио
источник
Я думаю, что это должно быть отформатировано NTFS ... (ты парень, который спросил это на Reddit слишком кстати?)
Алекс
@ Алекс, нет, не я ... и нет, UEFI может загружаться только из FAT32!
Виктор Аурелио
Вы исправили магазин BCD?
fpmurphy
@ fpmurphy1 нет, как это сделать?
Виктор Аурелио
1
Что означает «Поместить UEFI: NTFS на FAT32»?
Филипп Людвиг

Ответы:

7

Вы все сделали правильно. Сделайте таблицу gpt с fat32 и скопируйте на нее все данные из iso. Но вам также нужно установить флаг "msftdata" (не "boot") в этом разделе с помощью, например, parted.

Feretj
источник
1
Для тех , кто использует Gdisk: вместо создания ef00создать 0700раздел.
Виктор Аурелио
установите флаг "msftdata" (не "boot"), спасибо @Feretj, вы спасли мою жизнь
gpanda
Вы не можете поместить все данные на диск FAT32 по состоянию на июнь 2019 года. Последнее обновление содержит значение, windows.wimкоторое превышает 4,1 ГБ.
Бен
8

Руководство по подготовке Windows 10 Октябрь 2018 года выпуска загрузочного USB-накопителя UEFI на любом дистрибутиве Linux.

Обратите внимание, что выпуск Windows 10 октября 2018 года содержит установочный файл, sources/install.wimразмер которого превышает максимальный FAT32размер файла, поэтому мы отформатируем USB-накопитель NTFS. Установщик Windows также не может работать с разделом (кодом ef00) EFI , поэтому мы будем использовать Microsoft basic dataтип раздела (код 0700).

Шаги для создания USB-накопителя с именем /dev/sdc( Замените все команды на имя ВАШЕГО устройства! ):

  1. Вставьте USB-накопитель в компьютер и убедитесь, что он отключен. Некоторые дистрибутивы любят автоматическое подключение USB-накопителей, поэтому обязательно отключите их. Смонтированные разделы можно найти с помощью mount -l | grep '/dev/sdc', затем размонтировать с помощью sudo umount /dev/sdcX(X - номер раздела).
  2. Откройте USB-блочное устройство, используя его gdisk /dev/sdc, настройте его как GPTи создайте Microsoft basic dataраздел (код 0700), затем запишите изменения и выйдите ( Следующие шаги уничтожат таблицу разделов на вашем USB-накопителе !!! ).
sudo gdisk /dev/sdc
o
> This option deletes all partitions and creates a new protective MBR.
> Proceed? (Y/N): y
n
> Partition number ... > hit Enter
> First sector ... : > hit Enter
> Last sector ... : > hit Enter
> Current type is 'Linux filesystem'
> Hex code or GUID (L to show codes, Enter = 8300): 0700
p
> Should print something like:
> Disk /dev/sdc: 15646720 sectors, 7.5 GiB
> Model: DataTraveler 160
> Sector size (logical/physical): 512/512 bytes
> Disk identifier (GUID): ...
> Partition table holds up to 128 entries
> Main partition table begins at sector 2 and ends at sector 33
> First usable sector is 34, last usable sector is 15646686
> Partitions will be aligned on 2048-sector boundaries
> Total free space is 2014 sectors (1007.0 KiB)
> Number  Start (sector)    End (sector)  Size       Code  Name
>    1            2048        15646686   7.5 GiB     0700  Microsoft basic data
w
> Final checks complete. About to write GPT data. THIS WILL OVERWRITE EXISTING PARTITIONS!!
> Do you want to proceed? (Y/N): y
q
  1. Отформатируйте новый раздел как NTFS:
sudo mkfs.ntfs /dev/sdc1
  1. Смонтируйте новый раздел USB во временную директорию в вашем доме:
mkdir ~/tmp-win10-usb-drive
sudo mount /dev/sdc1 ~/tmp-win10-usb-drive
  1. Загрузите установочный ISO-файл Windows, создайте новый временный каталог у себя дома и смонтируйте его там:
mkdir ~/tmp-win10-iso-mnt
sudo mount Win10_1809Oct_English_x64.iso ~/tmp-win10-iso-mnt
  1. Скопируйте все файлы с подключенного ISO на USB-накопитель (вы можете использовать, rsyncчтобы увидеть прогресс):
sudo cp -rT ~/tmp-win10-iso-mnt/ ~/tmp-win10-usb-drive/
  1. Размонтируйте Windows ISO и USB-накопитель и удалите временные каталоги:
sudo umount ~/tmp-win10-iso-mnt/ ~/tmp-win10-usb-drive/
rmdir ~/tmp-win10-iso-mnt/ ~/tmp-win10-usb-drive/
  1. Вставьте USB-накопитель в новый компьютер и загрузитесь с него.
Lirt
источник
2
Некоторые прошивки не проверяют загрузочные файлы в разделе NTFS, кто-то исправляет меня, если я ошибаюсь.
Виктор Аурелио
Вы можете сжать файл install.wim меньше 4 ГБ, используя уровень сжатия «wimtools» и «solid». Таким образом, вы можете просто использовать FAT32, см. Tqdev.com/2019-cannot-copy-windows-10-install-wim
mevdschee
Вы можете значительно ускорить форматирование флешки,
Роберт,
3

Я использовал woeusb в Ubuntu следующим образом ( Внимание: это перезапишет всю таблицу разделов! ):

sudo woeusb --tgt-fs NTFS --device Win10_1809Oct_Hungarian_x64.iso /dev/sdc

Если вы столкнулись с этим сообщением об ошибке:

Раздел все еще обнаруживается после стирания всех подписей, это означает, что диск может быть заблокирован в режиме только для чтения из-за окончания срока службы.

сделайте следующее: sudo fdisk /dev/sdcи выберите, dа затем, наконец w.

(Источник: https://github.com/slacka/WoeUSB/issues/219 .) После этого попробуйте еще раз выполнить приведенную выше команду.

В любом случае, с помощью этого метода woeusb создал таблицу разделов gpt с двумя разделами:

partition      file system    label          size          flags
----------------------------------------------------------------
/dev/sdc1      nfts           Windows USB     57.00 GiB
/dev/sdc2      fat16          UEFI_NTFS      512.00 KiB    lba
unallocated                                    4.00 MiB

Наконец, все, что мне нужно было сделать, это установить флаг загрузки с помощью gparted для раздела / dev / sdc2 (рядом с lba).

Таким образом, я мог бы успешно загрузиться в режиме UEFI и установить Windows 10 с USB-накопителя.

Варга
источник
Комментируя, просто чтобы напомнить себе, чтобы поддержать, если это работает.
Этот бразильский парень
2

Попробуйте использовать Руфус с вином.

С уважением.

aalf1987
источник
2
Это не решение "Linux".
Виктор Аурелио
1
Но это работает хорошо.
aalf1987
Руфус с открытым исходным кодом. Быстро, эффективно, работает на Linux. Благодарность!
Ахмедом
0

Раздел EFI должен быть Fat32. Это в спецификации EFI. Ваша система никогда не загрузится, если вы поместите установочные файлы в раздел NTFS.

Вам даже не нужно никакого специального программного обеспечения. GPT / FAT32 для установщика, извлеките все файлы из iso (я полагаю, что у вас установлена ​​последняя версия iso с использованием средства создания носителей, так как оно включает ноябрьское обновление), и установите «загрузочный флаг» с помощью gparted. Затем он загрузится в установщик в режиме EFI, если при запуске компьютера вы выберете EFI USB в параметрах загрузки.

Пингеры.

пингеров
источник
Проблема в том, что как только установщик начинает процесс, он выдает ошибку, описанную в вопросе.
Виктор Аурелио
ты пробовал с другим iso? Я бы заподозрил мой источник. Возьмите последний, как описано в моем ответе. Если вы загрузитесь с этим на вашем USB, и вы все еще получаете сообщение об ошибке, я бы начал сомневаться в оборудовании ...
Пингерс
да, я тоже это попробовал ...
Виктор Аурелио