Вопрос: Как сделать Windows 7 USB флеш-носителем для установки с Linux?


У меня есть:

  • Образ ISO среды установки Windows 7
  • USB-накопитель на 4 ГБ
  • нет привода DVD
  • Установлен Linux

101
2018-05-09 22:50


Источник


Если вам удастся сделать все эти задачи с вашего рабочего стола Linux, вы будете раскачивать дом. Я думаю, что самая сложная часть будет возиться со всеми операциями, которые делает Windows Diskpart. Создание раздела, помеченного как «активный» и «загрузочный», «первичный» и т. Д. - p.campbell
Я думаю, что GParted (gparted.sourceforge.net) отлично справляется со всеми разделами. См. gparted.sourceforge.net/screenshots.php , И я не тестировал, но похоже, что rsync может заменить robocopy в этом контрольном списке. - Matthew Flaschen
Есть много подробных ответов на тот же вопрос о askubuntu.com/q/289559/135671 - erik


Ответы:


Хорошо, после безуспешных попыток всех описанных здесь методов я, наконец, получил его работу. В основном, отсутствующим шагом было написать надлежащий загрузочный сектор на USB-накопитель, который можно сделать из Linux с помощью ms-sys или lilo -M, Это работает с розничной версией Windows 7.

Вот полный разбор:

Установите ms-sys - если это не в ваших репозиториях, получите его Вот, Или, альтернативно, убедитесь, что lilo установлен (но не запустите шаг liloconfig в вашем локальном поле, если, например, Там установлен Grub!)

Проверьте, какое устройство назначено для вашего USB-носителя - здесь мы предположим, что это /dev/sdb, Удалите все разделы, создайте новый, занимая все пространство, задайте тип NTFS (7) и не забудьте установить его загрузочным:

# cfdisk /dev/sdb  или  fdisk /dev/sdb  (раздел тип 7, а также загрузочный флаг)

Создайте файловую систему NTFS:

# mkfs.ntfs -f /dev/sdb1

Написать Windows 7 MBR на USB-накопителе (также работает для Windows 8), здесь есть несколько опций:

  1. # ms-sys -7 /dev/sdb
  2. или (например, на более новых установках Ubuntu) sudo lilo -M /dev/sdb mbr (Информация)
  3. или (если syslinux установлен), вы можете запустить sudo dd if=/usr/lib/syslinux/mbr/mbr.bin of=/dev/sdb

Установите ISO и USB-носители:

# mount -o loop win7.iso / mnt / iso
# mount / dev / sdb1 / mnt / usb

Скопировать все файлы:

# cp -r /mnt/iso/* /mnt/usb/   ... или использовать стандартный графический интерфейс пользователя в вашей системе

Вызов sync чтобы все файлы были написаны.

Откройте gparted, выберите USB-накопитель, щелкните правой кнопкой мыши файловую систему и нажмите «Управление флагами». Установите флажок загрузки, затем закройте.

...и вы сделали.

После всего этого вы, вероятно, захотите создать резервную копию своего USB-носителя для дальнейшей установки и избавиться от файла ISO ... Просто используйте dd: # dd if=/dev/sdb of=win7.img

Обратите внимание, что это копирует все устройство! - который обычно (намного) больше, чем файлы, скопированные на него. Поэтому вместо этого я предлагаю

# dd count=[(size of the ISO file in MB plus some extra MB for boot block) divided by default dd blocksize] if=/dev/sdb of=win7.img

Так, например, с 8 М лишними байтами:

# dd count=$(((`stat -c '%s' win7.iso` + 8*1024*1024) / 512)) if=/dev/sdb of=win7.img status=progress

Как всегда, тщательно проверяйте имена устройств при работе с dd,

Способ создания загрузочного USB, представленный выше, также работает с установщиком Win10 iso. Я попробовал запустить Ubuntu 16.04, копируя Win10_1703_SingleLang_English_x64.iso (размер 4,241,291,264 байт) на 8-гигабайтный USB-накопитель - только при загрузке без защиты UEFI [без защиты]. После выполнения отчетов dd:         8300156 + 0 записей в         8300156 + 0 записей         4249679872 байт (4,2 ГБ, 4,0 ГБ), 412,807 с, 10,3 МБ / с

Обратный, если / в следующий раз, когда вы хотите установить установщик Windows 7 на USB.


179
2017-08-04 15:38



Было бы неплохо упомянуть тип числового раздела для использования в cfdisk (7, 86, 87?) - Johan Dahlin
Он работал с типом 7 - Ropez
Просто обратите внимание: если ваша файловая система ntfs дает странные ошибки разрешения при записи на нее даже с правами root, убедитесь, что вы установили ntfs-3g. - Jeremy Salwen
Я попробовал это прямо на жестком диске, и я получил сообщение об ошибке «Windows не может получить доступ к источникам установки» после того, как я загрузился с него. - Jeremy Salwen
вызов sync после копирования, чтобы убедиться, что все файлы написаны - Nicolas Dusart


Вы можете выполнить это с помощью dd, если ваш компьютер поддерживает UEFI и, соответственно, GPT-диски.

Откройте терминал, и вам нужно будет найти, какое устройство является вашим pendrive. Если у вас установлен диск, вы можете найти имя устройства, набрав «mount» и посмотрев его запись. Что-то вроде следующего:

/dev/sdb1 on /media/USBDISK type vfat (rw,nosuid,nodev,uhelper=hal,uid=1000,utf8,shortname=mixed)

В этом случае первая часть / dev / sdb устанавливается на / media / USBDISK. Откройте корневую оболочку и отключите диск.

umount /dev/sdb1

Перейдите в каталог, в котором ваша ISO хранится в корневой оболочке, и введите следующее: (Замените windows7.iso тем, что вызывается iso, и / dev / sdb с идентификатором устройства вашего USB-накопителя).

dd if=windows7.iso of=/dev/sdb

Если ваша материнская плата поддерживает загрузку с помощью pendrive, она должна быть в состоянии загрузиться с нее. Это заставит установщика на pendrive не самой ОС.


13
2018-05-11 14:28



Не работает для меня.
Поддерживает ли ваша материнская плата загрузку с USB? Это будет решающим фактором, будет ли этот подход работать или нет. - TrueDuality
Не работает и для меня, и моя машина действительно поддерживает загрузку USB. Возможно, такой подход может работать на машинах, которые могут загружать USB-накопители в стиле DVD, но большинство BIOS считают, что формат жесткого диска на USB (что означает 512-байтовый MBR с загрузочным кодом в нем). Что стоит упомянуть: изображения Fedora CD / DVD, в отличие от W7, действительно имеют такой MBR с загрузочным кодом и таблицей разделов на них, что делает их пригодными для загрузки HDD / USB. - Tronic
Это требует, чтобы ваша материнская плата могла загружать USB-CDROM не только USB-HDD - TrueDuality
В этом решении отсутствует шаг MBR-установки и, как правило, не работает, если только это не волшебство. Решение @Gunthers завершено. - stolsvik


Предложение PCambell хорошее, но вы также захотите очистить MBR, эквивалент Linux ниже

Я пробовал это, и он работал (я не уверен, почему метод dd не удался, но кажется, что раздел должен был быть ntfs?):

  • выработать, какой / dev / device - ваш USB-накопитель и отключить его
  • очистить MBR: dd if = / dev / zero of = / dev / device bs = 446 count = 1
  • запустить fdisk / dev / device
  • удалить все разделы и создать 1 основной раздел, сделать его загрузочным, а затем сохранить изменения
  • запустите mkfs.ntfs / dev / device1 (раздел 1)
  • скопировать все содержимое окон, установить iso на раздел, который вы создали

5
2018-03-27 08:24





Вместо

dd if=windows7.iso of=/dev/sdb

вы пишете как root,

dd if=windows7.iso of=/dev/sdb1 

(ДОБАВИТЬ 1 в конце или независимо от вашего USB-накопителя).


-4
2017-12-22 18:20



Нет, из = sdb правильно в соответствии с предыдущими ответами. - James Broadhead
Это просто неправильно. - lukad
-1: dd нужно писать на устройства, а не на разделы - ssc