Я не могу создать загрузочный USB для дистрибутива Windows (XP, 7 8) с ISO-образом из терминала Linux. Я пытаюсь с dd, но это работает только для дистрибутивов Linux. Я также попытался сделать флешку загрузочной, установив флаг загрузки с помощью fdisk, установив .iso и флешку, а затем скопировав файлы с помощью cp. Есть ли разница между этими iso-изображениями> И если да, то как мне определить, можно ли использовать изображение для создания загрузочного USB или нет?
1 ответ
Если вы хотите использовать только терминал, я бы предпочел придерживаться ручного способа. Давайте использовать Windows 7 в качестве примера:
Примечание: перед запуском, пожалуйста, получите root, запустив sudo su
Давайте подготовим USB-накопитель для наших целей:
mkfs.vfat /dev/sdXY
Если вы встретите -bash: mkfs.vfat: command not found
, просто apt-get -y install dosfstools
и повторите последний шаг.
Далее необходимо смонтировать ISO-образ, чтобы скопировать необходимые файлы:
mkdir /mnt/iso
mount -o loop -t udf /path_to_your_image.iso /mnt/iso
Смонтируйте только что отформатированный USB-накопитель:
mkdir /mnt/stick
mount -t auto /dev/sdXY /mnt/stick
Начать копирование:
cp -Rv /mnt/iso/* /mnt/stick/
(это займет некоторое время, если изображение большое, а флешка довольно медленная)
Теперь давайте размонтируем образ ISO:
umount /mnt/iso
Чтобы помочь загрузчику найти диск, необходимо создать фиктивный файл:
touch /mnt/stick/roxboot.tag
Теперь установите многофункциональный загрузчик (GRUB4DOS):
cd ~
wget http://download.gna.org/grub4dos/grub4dos-0.4.4.zip
unzip ./grub4dos-0.4.4.zip
cd grub4dos-0.4.4
./bootlace.com --no-backup-mbr --mbr-disable-floppy /dev/sdX
Примечание. Для успешной загрузки GRUB4DOS необходим специальный файл загрузчика GRLDR, поэтому давайте скопируем его:
cp ~/grub4dos-0.4.4/grldr /mnt/stick/
GRUB4DOS использует файл конфигурации с именем menu.lst
, чтобы создать загрузочное меню и представить его пользователю, поэтому давайте создадим файл и пункт меню для установки Windows 7:
touch /mnt/stick/menu.lst
echo "title Windows7 Install" > /mnt/stick/menu.lst
echo "find --set-root --ignore-floppies --ignore-cd /roxboot.tag" >> /mnt/stick/menu.lst
echo "chainloader /bootmgr" >> /mnt/stick/menu.lst
Размонтируйте флешку:
umount /dev/sdXY
Теперь, если вы хотите проверить это, перезагрузите компьютер и дайте команду BIOS загрузиться с USB, изменив порядок загрузки или выбрав карту памяти в «Меню однократной загрузки».
Примечание: в /dev/sdXY
: X представляет букву, назначенную udev, когда флешка подключена, а Y - число (обычно 1), поскольку ваша флешка имеет один раздел. Если у вас есть один жесткий диск, то ваша флешка должна быть /dev/sdb
а раздел, над которым мы работаем, должен быть /dev/sdb1
PS: Привет из Румынии!