Недавно друг попросил установить ему Windows 7. Так уж вышло, что мой DVD-привод давно не работает, зато есть флешка на 8 ГБ. Тема создания загрузочной флешки с Windows 7 из-под Windows уже давно сильно разжевана в Сети. Но я пользуюсь Ubuntu, так что пришлось искать другое решение. На самом деле, как мне кажется, оно еще и проще.
Для начала нам потребуется графическая утилита GParted и пакет для работы с файловой системой NTFS. Для этого достаточно установить пакеты gparted и ntfsprogs. Это можно сделать как через Synaptic, так и через консоль:
Далее нам нужно отформатировать флешку.
Можно сделать это из консоли:
вместо /dev/sdb4, разумеется, должен быть адрес Вашей флешки
Можно это сделать и более легким путем. Для этого запускаем GParted, выбираем флешку (выпадающее меню сверху) и выбираем раздел. Выбираем в меню «Раздел» подменю «Отмонтировать», потом снова в меню «Раздел» подменю «Форматировать в » и в выпадающем меню выбираем «ntfs». Жмем зеленую галочку на панели инструментов.
Если Вы форматировали флешку через консоль, то дальше все-равно придется запустить GParted для того, чтобы установить boot флаг на флешку. Выбираем нужный раздел, выбираем меню «Раздел», подменю «Установить флаги». В появившемся окошке ставим галочку на «boot» и закрываем окно. GParted нам больше не понадобится.
Дальше проблема, с которой я столкнулся было то, что стандартные средства Ubuntu не позволяют открыть UDF ISO образ. Поэтому нужно смонтировать образ вручную:
Осталось только скопировать все файлы из образа на флешку:
Вот и все!
P.S. В принципе можно таким образом на флешку не только Windows 7 скопировать.
UPD. Можно обойтись и вовсе без использования GParted. Вместо него можно использовать fdisk (спасибо icCE)
UPD2. Более простой способ с помощью dd (спасибо stampoon):
UPD3. Если после dd или копирования файлов с флешки загрузиться не выходит, вероятно там не корректная MBR. (thx nalimka)
Можно заюзать утилиту ms-sys:
Для начала нам потребуется графическая утилита GParted и пакет для работы с файловой системой NTFS. Для этого достаточно установить пакеты gparted и ntfsprogs. Это можно сделать как через Synaptic, так и через консоль:
sudo apt-get install gparted ntfsprogs
Далее нам нужно отформатировать флешку.
Можно сделать это из консоли:
sudo mkfs.ntfs /dev/sdb4
вместо /dev/sdb4, разумеется, должен быть адрес Вашей флешки
Можно это сделать и более легким путем. Для этого запускаем GParted, выбираем флешку (выпадающее меню сверху) и выбираем раздел. Выбираем в меню «Раздел» подменю «Отмонтировать», потом снова в меню «Раздел» подменю «Форматировать в » и в выпадающем меню выбираем «ntfs». Жмем зеленую галочку на панели инструментов.
Если Вы форматировали флешку через консоль, то дальше все-равно придется запустить GParted для того, чтобы установить boot флаг на флешку. Выбираем нужный раздел, выбираем меню «Раздел», подменю «Установить флаги». В появившемся окошке ставим галочку на «boot» и закрываем окно. GParted нам больше не понадобится.
Дальше проблема, с которой я столкнулся было то, что стандартные средства Ubuntu не позволяют открыть UDF ISO образ. Поэтому нужно смонтировать образ вручную:
sudo mkdir /media/iso
sudo mount windows7.iso /media/iso -t udf -o loop
Осталось только скопировать все файлы из образа на флешку:
cp -R /media/iso/* /media/MyFlashDrive
Вот и все!
P.S. В принципе можно таким образом на флешку не только Windows 7 скопировать.
UPD. Можно обойтись и вовсе без использования GParted. Вместо него можно использовать fdisk (спасибо icCE)
bogus@bogus-laptop:~$ sudo fdisk /dev/sdb
Команда (m для справки): p
Диск /dev/sdb: 1998 МБ, 1998585344 байт
255 heads, 63 sectors/track, 242 cylinders
Units = цилиндры of 16065 * 512 = 8225280 bytes
Disk identifier: 0x00068ccc
Устр-во Загр Начало Конец Блоки Id Система
/dev/sdb4 1 243 1951712 7 HPFS/NTFS
Раздел 4 имеет различные физические/логические окончания:
физ=(241, 254, 63) логич=(242, 250, 7)
Команда (m для справки): a
Номер раздела (1-4): 4
Команда (m для справки): p
Диск /dev/sdb: 1998 МБ, 1998585344 байт
255 heads, 63 sectors/track, 242 cylinders
Units = цилиндры of 16065 * 512 = 8225280 bytes
Disk identifier: 0x00068ccc
Устр-во Загр Начало Конец Блоки Id Система
/dev/sdb4 * 1 243 1951712 7 HPFS/NTFS
Раздел 4 имеет различные физические/логические окончания:
физ=(241, 254, 63) логич=(242, 250, 7)
Команда (m для справки): w
Таблица разделов была изменена!
Вызывается ioctl() для перечитывания таблицы разделов.
WARNING: Re-reading the partition table failed with error 16: Device or resource busy.
The kernel still uses the old table. The new table will be used at
the next reboot or after you run partprobe(8) or kpartx(8)
Синхронизируются диски.
bogus@bogus-laptop:~$
UPD2. Более простой способ с помощью dd (спасибо stampoon):
dd if=/w7.iso of=/dev/sdx
UPD3. Если после dd или копирования файлов с флешки загрузиться не выходит, вероятно там не корректная MBR. (thx nalimka)
Можно заюзать утилиту ms-sys:
ms-sys -7 /dev/sdb