Qemu под Windows 7

среда, 12 августа 2009 г.




Собирая себе загрузочную флэшку,столкнулся с тем что для тестирования изменений каждый раз перезагружать машину лень.VMware с флешки грузиться(нормально,без бубна) отказывается и мой выбор пал на Qemu. Опишу процесс установки этого чуда:)

Качаем и устанавливаем акселератор qemu: http://www.h6.dion.ne.jp/~kazuw/qemu-win/Kqemu-1.3.0pre11-install.exe
Отсюда берём сам эмулятор: http://www.h6.dion.ne.jp/~kazuw/qemu-win/qemu-0.9.0-windows.zip
Распаковываем его в любое удобное место. В моём случае это был C:/qemu.
Первое чем следует заняться - создать виртуальный образ диска,на который в дальнейшем будет тестить гостевые ОС.
Для этого заходим в консоль(cmd):

C:\Users\myhost>cd C:/qemu

C:\qemu>qemu-img create xp.img 4096M
Formating 'xp.img', fmt=raw, size=4194304 kB


Переходим в папку с qemu(cd C:/qemu) и вводим команду qemu-img create имя_образа.img Размер_образаM(например,qemu-img create xp.img 4096M)
Образ будет создан в директории qemu.Смотрите на размер образа внимательно,он должен быть заданного вами размера. Если он весит 0 байт,повторите процедуру. Не знаю почему но у меня образ надлежащего размера создался раз на десятый.
Теперь перейдём собственно к запуску виртуальной машины. Поскольку использовать мне её придётся довольно часто,создадим bat файл.Но прежде определимся что может наша машинка,для этого откроем файл в папке qemu : qemu-doc.html. Для тех кто не силён в английском: http://jack.kiev.ua/docs/qemu-doc-ru.html . Так же не плохой материал можно почитать тут: http://greenflash.su/Grub4Dos/files/testing.htm

Ну всё,доки зачитали.Информацию уяснили. Вперёд!
Пример батников можно посмотреть в папке с эмулятором.


REM Start qemu on windows.
@ECHO OFF

REM SDL_VIDEODRIVER=directx is faster than windib. But keyboard cannot work well.
SET SDL_VIDEODRIVER=windib

REM SDL_AUDIODRIVER=waveout or dsound can be used. Only if QEMU_AUDIO_DRV=sdl.
SET SDL_AUDIODRIVER=dsound

REM QEMU_AUDIO_DRV=dsound or fmod or sdl or none can be used. See qemu -audio-help.
SET QEMU_AUDIO_DRV=dsound

REM QEMU_AUDIO_LOG_TO_MONITOR=1 displays log messages in QEMU monitor.
SET QEMU_AUDIO_LOG_TO_MONITOR=0

REM PCI-based PC(default): -M pc
REM ISA-based PC : -M isapc
REM -M isapc is added for NE2000 ISA card.

Как показано выше,в начале бат файла можно задать параметры видео,звука и эмуляции pci /isa и тд.

Мой батник куда проще:
qemu-system-x86_64.exe -L . -boot c -m 800 -hda //./PhysicalDrive1 --hdb C:/Qemu/XP.img
где:

-L показывает путь к файлам bios и keymap (в этом примере -L . указывает на то место, откуда запущена qemu.)
-boot c -это загрузка с жёсткого диска;
-m -память в мегобайтам выделяемая под систему;
-hda - непосредственно первый жёстки диск(моя флешка);
-hdb -второй диск,в нашем случае это наш созданный образ.
\\.\PhysicalDriveN' Где N это номер диска.

Учтите, что чёрточки (Например: \\.\PhysicalDrive0) которые мы используем, такие как рекомендует нам qemu-doc.html. Другие источники упорно утверждают, что надо использовать обратные чёрточки - Например: //./PhysicalDrive0.
Таким образом нельзя монтировать разделы, монтировать придётся целый диск

Загузить гостевую ОС так же можно и с флоппи и с cdrom,например так:

qemu.exe -L "C:\Qemu" -boot d -m 256 -cdrom C:\Unix\ISO\Debian_based\ubuntu_9.0.4.iso

Можно задать дополнительные параметры,например:

-soundhw all -localtime -net nic,model=rtl8139,vlan=0 -net tap,ifname=TAP
Подробнее о возможностях в уже известном нам доке:)

Для того что бы увеличить скорость работы гостевой ОС допишите к загрузке параметр -kernel-kqemu








1 коммент.:

specx2 комментирует...

Спасибо, огромное, что подсказали версию 0,9. А то на мучился я на 0,91 под Windows 7.
И спасибо, что показали как как диски хоста монтировать :)