Qemu: Windows под UNIX

Qemu — средство для создания виртуальной машины, на которой можно запустить любую ОС. Я его использую для запуска Windows (XP) на FreeBSD.
О том как это сделать я и собираюсь вкратце поведать.

Выбираем опции установки qemu

cd /usr/ports/emulators/qemu
make config

Я добавил к значениям по умолчанию только поддержку kqemu — специального модуля ядра, значительно ускоряющего работу эмулятора.

Собираем и устанавливаем qemu

make install

Конфигурирование FreeBSD для использования qemu

Для старта qemu понадобятся два модуля ядра:

модуль kqemu:

kldload kqemu.ko

модуль асинхронного ввода/вывода:

kldload aio.ko

для автоматической загрузки модулей, добавляем их в /boot/loader.conf

kqemu_load="YES" aio_load="YES"

Создаем файл образа жесткого диска размером 4 Gb

qemu-img create /home/ax2m/windows/win4G 4G

Теперь у нас имеется файл win4G, который будет образом диска виртуальной машины

Всё, виртуальная машина готова к запуску.

Создаем примерно такой скрипт:

#!/bin/sh
qemu -hda /home/ax2m/windows/win4G 
-m 1024 
-boot c 
-localtime 
-kernel-kqemu 
-soundhw all 
-net nic

и пробуем запустить, если все ок — идем дальше, если нет — вдупляем где ошиблись.

Ставим Windows на виртуальную машину

Делаем образ загрузочного диска, так быстрее установится система.

dd if=/dev/acd0 of=WXP.iso bs=2048

Запускаем виртуальную машину с нашим образом в роли CD-ROM и загрузкой с него же

qemu -hda /home/ax2m/windows/win4G 
-m 1024 
-boot d 
-localtime 
-kernel-kqemu 
-soundhw all 
-cdrom WXP.iso 
-net nic

Имеем 1024Mb RAM(-m 1024), 4Gb жёсткий диск (-hda /home/ax2m/windows/win4G), CD-ROM (-cdrom WXP.iso, если хотите ставить Windows с реального физического устройства, то укажите его вместо имени файла образа, например /dev/acd0) и загружаться всё это будет с CD-ROM (-boot d).

Начинаем установку, разбиваем диск на разделы, бла-бла-бла….

После первой перезагрузки в ходе установки вам надо загрузиться с HDD, но установочный диск должен быть по прежнему доступен, поэтому запускаем qemu немного по другому:

qemu -hda /home/ax2m/windows/win4G 
-m 1024 
-boot c 
-localtime 
-kernel-kqemu 
-soundhw all 
-cdrom WXP.iso 
-net nic

Завершаем установку и настройку Windows.

Производим запуск вражеской оси, например так:

qemu -hda /home/ax2m/windows/win4G 
-m 1024 
-boot c 
-localtime 
-kernel-kqemu 
-soundhw all 
-net nic

[tip]Для работы в Windows, просто щёлкните внутри окна qemu.
Для того чтобы qemu «отпустил» мышь, нажмите Ctrl-Alt.
Для перехода в консоль управления виртуальной машиной нажмите Ctrl-Alt-2.
Для возврата в основное окно — Ctrl-Alt-1[/tip]

[help]Команды консоли qemu
help — выведет все возможности консоли qemu
quit или q — остановка машины
stop — остановка эмуляции (будет остановлен процессор машины)
cont или c — запустить эмуляцию снова
eject — вытащить виртуальный CD-диск
savevm/loadvm — сохранить/загрузить состояние виртуальной машины[/help]



22 октября 2010.   Комментарии: Комментарии к записи Qemu: Windows под UNIX отключены.    Размещено в FreeBSD