Кое-что о Qemu

Предисловие

Qemu - это отличный эмулятор компьютера. Достоинства:


  • Является Open Source программой

  • Отлично справляется с такими системами, как Haiku, MenuetOS (чего не умеет VirtualBox)

  • Имеет свой "ускоряющий модуль" kqemu (хотя может работать и без него)

  • Является консольной программой (вы можете применять Qemu и в отсутствие X-ов)

  • Имеет кучу всяких разных настроек - даже способов организации сетевого подключения сэмулированного компьютера там по меньшей мере 3

  • Возможность подключения к сэмулированному компьютеру
  • ...



Зачем статья - отсылать к ней при возникновении разных вопросов.

Установка

Сайт Qemu

С компиляцией gcc 4.0.0 и выше возникают проблемы, поэтому я рекомендую скачать бинарную сборку (текущая версия 0.9.1) отсюда. Там обыкновенный tar.gz, который распаковывается в /.

"Ускоряющий модуль" kqemu (текущая версия, гарантированно работающая с qemu 0.9.1, - 1.3.0pre11) скачивается оттуда же. Его бинарной сборки нет, вам придется собирать модуль из исходных кодов (потребуются исходные коды Вашего ядра).

Корректная сборка kqemu с gcc 4.0.0 и выше не гарантируется. Собственно, собрать модуль у меня получилось только после наложения самопального патча:

(для 2.6.25.*)


--- kqemu-linux.c 2007-02-07 00:02:00.000000000 +0300
+++ kqemu-linux.c_true 2008-04-30 14:39:04.000000000 +0400
@@ -16,6 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/
+#include <linux/sched.h>
#include <linux/module.h>
#include <linux/types.h>
#include <linux/errno.h>


После сборки загрузите модуль и поставьте корректные права на /dev/kqemu:


su -c 'modprobe kqemu && chmod 777 /dev/kqemu'


Работа

Нет ничего сложного, кроме того, что qemu - консольная программа. Запустите qemu без параметров, чтобы узнать, как его использовать.

Если Вы не используете режим "-nographic", вам могут пригодится сочетания клавиш:

  • CTRL-ALT-f - полноэкранный режим и обратно

  • CTRL-ALT - освободить захваченные qemu мышь и клавиатуру

  • CTRL-ALT-1 - (переключится на виртуальную консоль qemu за номером 1) дисплей эмулируемого компьютера

  • CTRL-ALT-2 - консоль управления qemu (очень пригодится Вам для управления доступа qemu к съемным дисками)



Для создания образов жестких дисков Вы должны использовать "qemu-img". Стоит заметить, что поддерживаются диски разных форматов, но самый продвинутый - qcow2 (а умолчательный - raw). Поэтому для создания образа используйте:


qemu-img create -f qcow2 NAME SIZE


Где:

  • NAME - имя результирующего файла

  • SIZE - размер образа (допускаются суффиксы вроде: "M", "G")



* С помощью "qemu-img convert" всегда можно сконвертировать образ из одного формата в другой.

Настроить подключение к сети можно несколькими способами, один из которых я опишу в следующем посте.

AQemu

AQemu - отличный графический front end для qemu. Если Вы использовали VirtualBox только из-за его удобного GUI, то Вам стоит посмотреть на AQemu.

AQemu разрабатывается в рамках Северо-Кавказской LUG, текущая версия - 0.4. Программа весьма стабильна, красива и удобна. Единственное "но" - работает с Qt4 (по мне, так Qt4 - просто шикарная весчь).

Плюсы:


  • Русский язык

  • Qt4 (да, да - возможно кому-то не нравится)

  • Удобная организация интерфейса - каждый винтик "по делу", что называется

  • Мастер для начинающих

  • Куча всяких настроек (корректно перенесено все "настроечное" многообразие qemu в GUI)

  • Подключить эмулируемый компьютер к сети можно в два-три щелчка (это мне особенно нравится - я вспоминаю свои мучения при подключении qemu через tun/tap)

  • Панелька управления виртуальной машиной

  • Разные там шаблоны и т.п. мелочь



Минусы (их немного):


  • Мелкие досадные баги (к примеру, иногда при создании образа диска вылетает диагностическое сообщение о невозможности этот образ создать - хотя фактически он создается и становится доступен)

  • Отсутствие вменяемой справки (а очень хотелось - новичкам aqemu понравилося бы)

  • Разные изменения в расположении файлов от релиза к релизу (при обновлении до 0.4 пришлось вручную редактировать ~/.config/ANDronSoft/AQEMU.conf)



Что почитать про qemu



P.S. Пост полностью подготовлен в Vim, который, как обычно, рулит :-)

1 комментарий:

Анонимный комментирует...

Я главный разработчик AQEMU, про проблему при установке новых версий AQEMU по верх старых, я знаю: в версии 0.5 её не будет.
Про ошибку о невозможности создать образ диска я тоже знаю, и она уже исправлена (версия 0.5 будет без неё) это происходит только на QEMU 0.9.1, просто во время разработки AQEMU 0.4 у меня была QEMU 0.9.0.
Ещё ожидается много улучшений, и даже возможно порт под Windows.