Винда в Линуксе

12.04.2011

IE и Windows внутри эмулятора на фоне браузера в Линуксе

Для тестирования JS в продолжающем досаждать браузере от мелкомягких всё же пришлось установить эмулятор QEMU (виртуальную машину), чтобы в нём уже установить гостевую операционку. Об этом и расскажу, чтобы самому не забыть и может мой рассказ сбережёт кому-то ещё драгоценное время.

Функциональности, быстродействия и стабильности скриншот-сервисов, к сожалению, мне не хватило — сплошной стресс от их работы, бесят ужасно задержками и глюками.

В последнее время вы чувствуете постоянное чувство усталости, головные боли и ваше общее состояние ухудшилось? Тогда вам необходимо обратиться в Консультативно диагностический центр 15 ГКБ, чтобы выяснить причину вашего недомогания. Не затягивайте с диагностикой и лечением болезни и, тогда её можно будет быстро вылечить.

Установка QEMU

Установил из репозитория своего дистрибутива, в большинстве дистрибутивов Линукса QEMU должен найтись. У меня выбора не было, поставил пакет qemu-kvm, хотя KVM у меня не запустится.

Подготовка и установка Windows

Ещё со времён нетбучека MSI у меня остался компакт-диск с легальной копией Windows XP. Вот уж не думал, что он пригодится. Кстати, смешной факт: у MSI Wind не было CD-привода :)

Сперва нужно создать изолированный образ для виртуальной машины (просто файл, выделенное место). Я выполнил команду:
qemu-img create название_файла 2G.

После вставил установочный CD и примонтировал дисковод, хотя монтировать, похоже, и не обязательно было вовсе. Первый запуск должен быть с компакт-диска, но обязательно должен быть видимым образ (для виртуалки это будет как винчестер). Делается это вот такой командой:
qemu -cdrom /dev/cdrom -hda тот_самый_файл.

Обратите внимание, именно hda, а не hdb, hdc и т. п., чтобы Windows распознала его именно как диск C:\ и только. Потому что, например, моя версия установщика не рассчитана была на другие варианты и просто висла. Ну и файл устройства CD-ROM в вашем дистрибутиве может быть в другом месте (у меня, кстати, тоже; просто в поставке много удобных ссылок на него). Если всё правильно, то можно порадоваться…

Установка Windows в эмуляторе QEMU из под Linux

Моя же радость была несколько омрачена ужасающей медлительностью этого процесса. Я не шучу: установка шла не один час! Засекать точно не стал, но уж очень грустный этот процесс. Впрочем, тормозу тормозово, сам виноват и жаловаться нефиг.

Как многие из вас помнят, Windows не ставится в один приём, она требует перезагрузки (у меня так даже два раза). Кстати, очень долго ещё и потому, что момент, когда нужно перезагрузиться, определять приходилось по слишком длительной уж статичности картинки — перезагрузки виртуальной машины не происходит, просто висит последний экран и всё. Приходилось останавливать, и запускать снова. Но запускать уже надо иначе: чтобы был доступен установочный компакт-диск, но при этом загрузчик должен быть уже с образа.
Команда немного меняется:
qemu -boot c -hda файл_образа -cdrom /dev/cdrom

Также можно запускать Windows и после того, как установка закончена, я лично только не прописывал cdrom, т. к. он мне не нужен. Никаких настроек для сети делать не пришлось, в IE сразу оказался доступен интернет. Просто всё ужасно медленно.

Ну очень медленно! Что делать?

К сожалению, на моей древней развалюхе аппаратную виртуализацию (KVM) задействовать нельзя, поэтому поседеть можно, пока Windows там внутри виртуалки ворочается. Загрузка происходит несколько минут, запуск программ — такая же мука.

Поэтому просто жизненно важно во-первых, отключить перделки у Windows (поставить тему Win-98, запретить все эффекты), во-вторых, пропускать загрузку, а включать сразу снимок загруженной ОСи с включенным IE.

Для этого я переключился в монитор (Ctrl+Alt+2, см. руководство) и скомандовал savevm blabla, на что получил «Error while create cnapshot…»

Выяснилось, что не с каждой файловой системой такой трюк проходит и не с каждым образом. Кстати, в описаннии сказано будто, что для сохранения имя файла пишется, но на самом деле это просто метка, всё записывается внутри образа — наружу ничего не выходит.

В общем, образ у меня был сырой, оказывается (raw), решил попробовать его сконвертировать в qcow и попробовать снова. Для конвертации используется входящая в комплект утилитка qemu-img (естественно, эмулятор во время конвертации лучше выключить). Полная команда такая: qemu-img convert имя_файла_сырого_образа -f raw -O qcow новое_имя.

Выполнялась эта конвертация для 2 Gb виртуальных (и 1,2 из них занято под установленную «Винду») у меня очень долго — около сорока минут. Зато, может показалось, но вроде запуск из этого нового образа происходит быстрее, чем из «сырца». Непонятно, почему по-умолчанию qemu не делает образ в этом своём формате qcow.

Однако, снимок сделать так и не получилось, та же ошибка, к сожалению. Но всё равно, уже хоть что-то, у меня есть ужасно медленный, но работающий Internet Explorer, в котором я могу почти нормально тестировать новую версию своего скрипта.

Если кто сталкивался с проблемой невозможности сделать снимок в QEMU и решил её — напишите в комментариях, чего можно предпринять? Ну и вообще, как ускорить, вдруг в моих условиях это возможно.

P.S. За два года я уж и забыл, насколько убога и надоедлива Windows. Постоянно всплывают какие-то хреновины: активация, безопасность, ещё чего-то там. Жуть. Как я мог столько лет мучаться? :) Впрочем, привычка — вторая натура.

Комментарии

  1. # BESTRAFER

    А почему был выбран Qemu, а не, например, Virtualbox? У самого стоит ХРюша в виртуалбоксе, работает не так быстро, как на нормальном компе, но вполне сносно – по крайней мере не бесит…

  2. # quantum

    BESTRAFER, это не Тормоз-way. Ему надо помучиться

  3. # BESTRAFER

    ну тогда лучше поставить Gentoo и оргомная порция мучений будет обеспечена :))) и долгое время будет не до Qemu и винды

  4. # Grayscaler

    Ужоснах, сколько же времени пришлось потратить на ерундовую операцию! Никогда не буду работать под юниксами, ни-за-что!

  5. # Аноним: 
    1. Grayscaler:

    Ужоснах, сколько же времени пришлось потратить на ерундовую операцию! Никогда не буду работать под юниксами, ни-за-что!

    И слава Богу, работай под виндами

  6. # Миша: 

    У меня правда кор2дуо и 2гб озу но в виртуалбоксе (кстати там размеры образов можно делать резиновыми) семерка работает очень шустро, особенно после установки дополнений гостевой ос, и образы сохраняются и т.п.

  7. # IAD

    VirtualBox с GUI вполне шустр и стабилен. К тому же он позволяет подключать образы дисков от WMVare и Windows Hyper-V без танцев с бубном и конвертациями.

  8. # Миша: 

    В данный момент я и сам из-под винды, не принципиально.. Все равно работа по ссх в виме :)

  9. # Белый Негр

    FreeBSD, Даже на серваке – задротство, сэр. Может, надежнее, но Дебиан как-то попроще :)

  10. # samsonych

    Тоже который год пользую VirtualBox. Весьма юзабельно и без особых мучений.

  11. # Тормоз

    В первую очередь VirtualBox пробовал поставить, но у меня какой-то изврат с конфигами после попыток установить Chrome :) Поэтому и VirtualBox не ставилась, неправильные версии каких-то там библиотек.

  12. # Миша: 

    Я в последнее время на серверах вообще убунту использую, чо

  13. # b0: 

    «За два года я уж и забыл, насколько убога и надоедлива Windows» – поставил в 2011 году ОС, вышедшую в 2001, чему же удивляться?

    «Постоянно всплывают какие-то хреновины: активация, безопасность, ещё чего-то там.» – поначалу есть немного, но там и расчет на абсолютно не знающих людей.

    «Ещё со времён нетбучека MSI у меня остался компакт-диск с легальной копией Windows XP» – на нетбуках (да и вообще на ноутбуках, как правило) OEM версия, ее нельзя ставить ни на что другое, кроме как на то, с чем она шла.

  14. # Тормоз

    Да и пофиг, я не читал лицензию даже, естественно. Я Microsoft заплатил два раза, покупая ноутбуки, поэтому больше меня ни капли не беспокоит совесть за нелегальное использование. Тем более что и не пользуюсь самой ОС — вынужден запускать эту хрень, из-за их же палок в колёса.

  15. # anonymous: 

    use wine luke.
    для старых железок без аппаратной поддержки виртуализации лучше просто запускать ie через wine.

    а для упрощения всего процесса есть winetricks.
    только не забудь по разным wineprefix разложить разные версии ie.

  16. # Тормоз

    IE через Wine запускается не настоящий, там движок от Мозиллы.

  17. # mr: 

    Чёрт, Тормоз, купи современный ноут! У меня winxp в виртуалке суспендится за 5 сек. Это не дело тратить столько времени на рутину (или забей тогда пока на это)

  18. # Тормоз

    Денег у меня нет пока :)

  19. # БопоХ

    Grayscaler, под линуксом любая операция делается напорядок быстрее чем в винде

  20. # Тормоз

    Ну не любая уж, есть плюсы и минусы у каждой операционки. Под Линукс, например, я пока не знаю ни одного графического редактора, который нормально бы обрабатывал большие файлы.

    В «Фотошопе» я хоть не слишком комфортно, но редактировал огромный (больше оперативной памяти) спутниковый снимок, а здесь я его в GIMP, например, даже и открыть не рискнул бы.

Комментирование этой статьи закрыто.

Интересное Покупки ТехникаРазное Отдых Статьи Строительство Услуги Общество Хобби Культура Советы Уют