Если вам удастся выполнить все эти задачи на рабочем столе Linux, вы будете раскачивать дом. Я думаю, что самой сложной частью было бы возиться со всеми операциями, которые выполняет Diskpart Windows. Создание раздела, помеченного как «активный» и «загрузочный», «основной» и т. Д.
Хорошо, после неудачной попытки всех методов, упомянутых здесь, я наконец получил это работающее. По сути, отсутствующим шагом было записать соответствующий загрузочный сектор на 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), несколько вариантов здесь:
# ms-sys -7 /dev/sdb
или (например, при более новой установке Ubuntu) sudo lilo -M /dev/sdb mbr( информация )
или (если установлен 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/... или используйте стандартный GUI-файл браузера вашей системы
Позвоните, 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 M дополнительных байтов:
Как всегда, внимательно проверяйте имена устройств при работе с ними dd.
Метод создания загрузочного USB, представленный выше, работает также с установщиком Win10 iso. Я попытался запустить Ubuntu 16.04, скопировав Win10_1703_SingleLang_English_x64.iso (размер 4 241 291 264 байта) на USB-накопитель емкостью 8 ГБ - только при загрузке без UEFI [небезопасной]. После выполнения dd сообщает: 8300156 + 0 записей в 8300156 + 0 записей, скопировано 4249679872 байт (4,2 ГБ, 4,0 ГБ), 412,880 с, 10,3 МБ / с
В обратном случае, если / в следующий раз вы захотите установить установщик Windows 7 на USB.
Было бы неплохо упомянуть числовой тип раздела для использования в cfdisk (7, 86, 87?)
Йохан Далин
5
Он работал с типом 7
Ropez
3
Просто примечание: если ваша файловая система ntfs выдает странные ошибки прав доступа при записи в нее даже от имени root, убедитесь, что вы установили ntfs-3g.
Джереми Сальвен
1
Я попробовал это прямо на жесткий диск, и я получил ошибку «Windows не может получить доступ к источникам установки», как только я загрузился с него.
Джереми Сальвен
4
Позвоните syncпосле копирования, чтобы убедиться, что все файлы записаны
Николас Дусарт,
13
Это можно сделать с помощью 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 на идентификатор устройства вашей флешки).
dd if=windows7.iso of=/dev/sdb
Если ваша материнская плата поддерживает загрузку с pendrive, она должна быть в состоянии загрузиться с нее. Это установит установщик на Pendrive, а не саму ОС.
Ваша материнская плата поддерживает загрузку с USB? Это будет решающим фактором того, будет ли этот подход работать или нет.
TrueDuality
11
У меня тоже не работает, и моя машина прекрасно поддерживает загрузку с USB. Возможно, этот подход может работать на машинах, которые могут загружать USB-накопители в стиле DVD, но большинство BIOS предполагают размещение в стиле HDD на USB (то есть MBR 512 байт с загрузочным кодом в нем). Стоит упомянуть: образы Fedora CD / DVD, в отличие от W7, на самом деле имеют такую MBR с загрузочным кодом и таблицей разделов, что делает их пригодными для загрузки с HDD / USB.
Троник
9
Для этого требуется, чтобы ваша материнская плата могла загружать USB-CDROM не только USB-HDD
TrueDuality
12
В этом решении отсутствует этап установки MBR, и обычно он не будет работать, если он уже волшебным образом не существует. Решение @Gunthers завершено.
stolsvik
5
Предложение PCambell хорошо, но вы также захотите очистить MBR, эквивалент Linux ниже
Я попробовал это, и это сработало (я не уверен, почему метод dd не удался, но кажется, что раздел должен быть ntfs?):
определите, какое устройство / dev / является вашей флешкой и размонтируйте его
очистить MBR: dd if = / dev / zero = = / dev / device bs = 446 count = 1
запустите fdisk / dev / device
удалите все разделы и создайте 1 основной раздел, сделайте его загрузочным и сохраните изменения
запустите mkfs.ntfs / dev / device1 (раздел 1)
скопируйте все содержимое установки Windows iso на созданный вами раздел
Ответы:
Хорошо, после неудачной попытки всех методов, упомянутых здесь, я наконец получил это работающее. По сути, отсутствующим шагом было записать соответствующий загрузочный сектор на 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), несколько вариантов здесь:
# ms-sys -7 /dev/sdb
sudo lilo -M /dev/sdb mbr
( информация )sudo dd if=/usr/lib/syslinux/mbr/mbr.bin of=/dev/sdb
Смонтируйте ISO и USB носитель:
Скопируйте все файлы:
# cp -r /mnt/iso/* /mnt/usb/
... или используйте стандартный GUI-файл браузера вашей системыПозвоните,
sync
чтобы убедиться, что все файлы записаны.Откройте gparted, выберите USB-накопитель, щелкните правой кнопкой мыши на файловой системе, затем нажмите «Управление флагами». Установите флажок загрузки, затем закройте.
...и вы сделали.
После всего этого вы, вероятно, захотите сделать резервную копию вашего USB-носителя для дальнейшей установки и избавиться от файла ISO ... Просто используйте dd:
# dd if=/dev/sdb of=win7.img
Обратите внимание, это копирует все устройство! - который обычно (намного) больше, чем файлы, скопированные в него. Так что вместо этого я предлагаю
Таким образом, например, с 8 M дополнительных байтов:
Как всегда, внимательно проверяйте имена устройств при работе с ними
dd
.Метод создания загрузочного USB, представленный выше, работает также с установщиком Win10 iso. Я попытался запустить Ubuntu 16.04, скопировав Win10_1703_SingleLang_English_x64.iso (размер 4 241 291 264 байта) на USB-накопитель емкостью 8 ГБ - только при загрузке без UEFI [небезопасной]. После выполнения dd сообщает: 8300156 + 0 записей в 8300156 + 0 записей, скопировано 4249679872 байт (4,2 ГБ, 4,0 ГБ), 412,880 с, 10,3 МБ / с
В обратном случае, если / в следующий раз вы захотите установить установщик Windows 7 на USB.
источник
sync
после копирования, чтобы убедиться, что все файлы записаныЭто можно сделать с помощью dd, если ваш компьютер поддерживает UEFI и, соответственно, GPT-диски.
Откройте терминал, вам нужно будет найти, какое устройство является вашим Pendrive. Если у вас подключен диск, вы можете найти имя устройства, набрав «mount» и просмотрев его вход. Что-то вроде следующего:
В этом случае первый раздел / dev / sdb монтируется в / media / USBDISK. Откройте корневую оболочку и размонтируйте диск.
Перейдите в каталог, где ваш ISO хранится в корневой оболочке, и введите следующее: (Замените windows7.iso на то, что называется iso, и / dev / sdb на идентификатор устройства вашей флешки).
Если ваша материнская плата поддерживает загрузку с pendrive, она должна быть в состоянии загрузиться с нее. Это установит установщик на Pendrive, а не саму ОС.
источник
Предложение PCambell хорошо, но вы также захотите очистить MBR, эквивалент Linux ниже
Я попробовал это, и это сработало (я не уверен, почему метод dd не удался, но кажется, что раздел должен быть ntfs?):
источник
Вместо
ты пишешь как
root
,(ДОБАВЬТЕ 1 в конце или на том месте, где находится USB-накопитель.)
источник
dd
нужно записывать на устройства, а не на разделы