Главная » Статьи » Мои статьи |
Сборка qemu
Qemu устанавливается только из портов, пакет развивается очень быстро и я настоятельно рекомендую перед установкой обновить порты. Детальный рассказ о том, как обновить порты, пользуясь CVSup можно найти в документации на FreeBSD. Коротко расскажу последовательность действий. cd /usr/ports/emulators/qemu make Вам будет задан вопрос, какие компоненты qemu необходимы. Я включаю поддержку kqemu — специального модуля ядра, значительно ускоряющего работу эмулятора. После сборки делаем make install Осталось сконфигурировать систему. Конфигурирование FreeBSD для использования qemu kldload kqemu.ko во-вторых, загружаем модуль асинхронного ввода/вывода: kldload aio.ko Без него qemu будет выдавать загадочное сообщение: Bad system call (core dumped) (или типа того, разные версии ругаются чуть по разному, но одинаково загадочно) и падать. Загрузка следующих модулей нужна только если вы хотите выдать эмулятору реальный IP-адрес. Для этого, вам понадобится мост.Загружаем модуль: kldload bridge.ko Настраиваем мост: sysctl net.link.ether.bridge_cfg=bge0,tap0 Здесь bge0 — мой сетевой интерфейс, у вас скорее всего будет другой. Файл диска виртуальной машины Виртуальная машина, конечно, имеет жёсткий диск. На самом деле это просто файл, объём которого и определяет объём диска. Я создаю файл на 12 гигабайт, для моих целей этого более чем достаточно. qemu-img create win12G 12G Теперь у нас имеется файл win12G, который будет образом диска виртуальной машины. Конфигурирование сети для виртуальной машины qemu в режиме NAT
Qemu может сам эмулировать NAT. Запускаем так:
qemu -m 512 \ Обратите внимание на опции -net nic и -net user. Благодаря им виртуальная машина сможет сама получить по DHCP (встроен в qemu) все настройки сети.Никаких дополнительных модулей ядра в этом режиме не требуется. Конфигурирование сети для виртуальной машины qemu с реальным IP-адресом
В этом случае вам как раз понадобится мост (bridge.ko) и устройство tap0. (Как их настроить я уже рассказала.)Чтобы qemu смогло поднять сетевой интерфейс, ему нужен up-скрипт. Назовём его qemu-ifup.Я получаю данные по DHCP, поэтому скрипт не велик: #!/bin/sh Всё, виртуальная машина готова к запуску. qemu -m 512 \ Установка Windows на виртуальную машину
Образ загрузочного диска Первым делом я создаю образ загрузочного диска Windows. Этого можно и не делать, для установки можно использовать полноценный диск, но как показывает практика, образ не повредит. dd if=/dev/acd0 of=WXP.iso bs=2048 Установка Windows, шаг первый
Теперь нам надо загрузить виртуальную машину с CD-ROM и установить Windows: qemu -m 512 \ Виртуальная машина будет иметь 512Mb оперативной памяти (-m 512), жёсткий диск (-hda /root/qemu/win12G), CD-ROM (-cdrom /root/qemu/WXP.iso, если вы используете реальное физическое устройство для чтения дисков, то укажите не файл, а это устройство; например /dev/acd0), сеть (интерфейс tap, скрипт для инициализации интерфейс /root/qemu/qemu-ifup
После запуска Windows предложит вам разбить новый диск на разделы и начнёт установку. Тут нет ничего необычного, Windows живёт на виртуальной машине точно так же, как и на реальной. Установка Windows, шаг второй
На втором шаге установки вам надо загрузиться с диска, но CD-ROM должен быть по прежнему доступен: qemu -m 512 \ Завершаем установку и настройку Winodws. Использование. Запуск Windows Теперь, чтобы запустить Windows, достаточно выполнить команду вида: qemu -m 512 \ Обратите внимание, здесь я ещё добавила в систему второй диск (D:) на 8 гигабайт. Несколько простых инструкций
Чтобы работать в Windows, просто щёлкните по окну.
Чтобы qemu «отпустил» мышь, нажмите Ctrl-Alt. Чтобы перейти в консоль управления виртуальной машиной нажмите Ctrl-Alt-2. Чтобы вернуться в основное окно — Ctrl-Alt-1 Возможности консоли qemu Все возможности можно узнать по команде help (и конечно из документации file:///usr/local/sh Остановка машины — quit или просто q.
Остановить эмуляцию (остановить процессор машины) — stop.
Запустить процессор снова — cont или c.
Вытащить виртуальный CD-диск — eject.
Сохранить или загрузить состояние виртуальной машины — savevm/loadvm. То есть вы можете запустить Windows, начать там что-то делать, потом зайти в консоль, остановить эмуляцию, сохранить состояние машины и выключить машину (stop, savevm, quit). Потом, вы можете снова запустить эмулятор, восстановить состояние машины и запустить её снова (loadvm, cont). В результате вы получите уже загруженную систему в том состоянии, в каком вы её покинули.
Единственная «неприятность» связана с часами. Системе будет казаться, что часы сделали резкий скачок, что может привести к некоторым недоразумения. Впрочем, не фатальным.Кроме того из консоли вы можете делать много другое: управлять мышью и клавиатурой, смотреть регистры процессора и состояние памяти, эмитировать нажатия кнопок «reset» и «power», добавлять и удалять USB-устройства, делать снимок экрана и многое другое. Доступны следующие команды: `help или ? [cmd]' `commit' `info суб-команда' `info network' `info block' `info registers' `info history' `q или quit' `eject [-f] устройство' `change устройство файла' `screendump файла' `log объект1[,...]' `savevm файл' `loadvm файл' `stop' `c или cont' `gdbserver [порт]' `x/fmt адрес' `xp /fmt адрес' fmt - это формат, сообщающий команде, как нужно форматировать данные. Его синтаксис: `/{количество}{форма количество формат (восьмеричный), c (символьный) или i (инструкции asm). размер Примеры: Дамп 10 инструкций относительно текущего указателя: (qemu) x/10i $eip
0x90107063: ret
0x90107064: sti 0x90107065: lea 0x0(%esi,1),%esi 0x90107069: lea 0x0(%edi,1),%edi 0x90107070: ret 0x90107071: jmp 0x90107080 0x90107073: nop 0x90107074: nop 0x90107075: nop 0x90107076: nop Дамп 80-ти 16-битных значений относительно начала видеопамяти: (qemu) xp/80hx 0xb8000 `p или print/fmt выражение' `sendkey клавиши' sendkey ctrl-alt-f1 перехватывает на низком уровне, наподобие ctrl-alt-f1 в X Window. `system_reset' ссылки | |
Просмотров: 5624 | Комментарии: 6 | |
Как запретить сайтам следить вами? |
Комедия из жизни высоких технологий в трёх частях, с моралью и системными требованиями. |
настройка Proftpd |
просто компюмор |
Как настроить mail.ru-агент в QIP Infium |
Всего комментариев: 6 | 1 2 » |
| |
1-5 6-6 | |