2008-10-01

Пара слов о виртуальных машинах

За всё время работы под Linux у меня много раз возникала идея снести Windows с соседнего раздела, отформатировать все разделы в ext3 — в общем отказаться от использования Windows. Но от этой идеи приходилось отказываться: брату от компьютера нужны в основном игры, мне бывает нужен сканер, для которого под Linux нет драйверов, да и принтер под Windows печатает «экономичнее»(может у меня кривые руки, но под Linux я так и не смог его настроить по-человечески). Ну и чтоб не перезагружать компьютер из за одной проблемы со сканером, я решил попробовать виртуальные машины. Под Windows я так же пользовался виртуальной машиной от Microsoft(VirtualPC), чтобы поиграться с Linux и Windows.

Началось всё с того, что было на диске с дистрибутивом — QEMU. Виртуальная машина, даже с графическим интерфейсом(как потом оказалось). На первый взгляд работает как и VirtualPC без установленных дополнений — медленно(относительно). Выяснил, что usb устройства не читались, с подключением floppy, CD тоже были проблемы, нагружает процессор постоянно... В общем решил поискать альтернативу.

И нашёл на том же диске с дистрибутивом — VirtualBOX. Работала она быстрее(при тех же параметрах, что и QEMU), диски/дискеты подключать было много проще, чем в QEMU, но usb она так же не поддерживала, но процессор, в отличие от QEMU, грузила только тогда, когда это действительно было необходимо.

Люди активно расхваливали Vmware, и я решил попробовать что это за зверь такой. Нашёл в интернете где можно скачать rpm пакет с этим Vmware-player'ом, скачал, установил, запустил. С третьей попытки(после запуска из консоли) понял, что надо сначала настроить её... Начал настраивать. Скрипт попросил скомпилировать модуль для ядра, для чего понадобилось установить исходники ядра(тогда я ещё с ядрами не возился/собирал ручками) и указать путь к header'ам. Установил исходники и указал путь, но скрипт завершился с ошибкой при начале компиляции. После долгих блужданий по GoogleGroups и различным форумам, выяснил, что надо «подготовить» ядро командой make prepare. И действительно всё собралось. Уже неприятно(поле таких хороших в плане установки и использования предыдущих виртуальных машин), но как потом выяснилось — оно того стоило. Далее я долго искал как создать образ жёсткого диска для Vmware(оказалось, что через QEMU утилиты). Создал ,запустил и установил туда Windows. Как всё летает! Как и VirtualBOX, процессор нагружался только тогда, когда это было необходимо. Usb устройства подхватывались(правда, без спроса). Я даже смог синхронизировать телефон по кабелю. В общем — просто сказка!

Но потом я поставил себе Mandriva 2008 Spring. Тут обнаружилось, что Vmware конфигурироваться не хочет(проблемы всё с тем же модулем). Поэтому я остановился на VirtualBOX. Буквально 3 дня назад я узнал из mydebianblog.blogspot.com, что QEMU таки поддерживает usb, но работает она, даже после VirtualBOX, очень медленно. Чтобы включить поддержку usb в QEMU нужно сделать следующее:

  1. Запускаем QEMU с нужными параметрами:

    qemu -usb -m 192 -hda vcomp.img -boot c

  2. Ищем нужное нам устройство в

    /proc/bus/usb/devices

  3. Переключаемся в QEMU в режим консоли:

    ctrl+alt+2

    и пишем

    usb_add host:Vendor:podID,

    где Vendor и ProdID берётся из /proc/bus/usb/devices. Причём usb устройство пропадает из хосотовой системы и появляется в гостевой.

  4. Преключаемся обратно в графический режим с QEMU:

    ctrl+alt+1

Так как QEMU работает очень медленно, буду ломать голову с Vmware дальше...


0 коммент.:

Отправить комментарий