The OpenNET Project / Index page

[ новости/++ | форум | wiki | теги ]

FreeBSD QEMU + Windows 2000: новые подробности. (qemu freebsd emulator windows)


<< Предыдущая ИНДЕКС Правка src / Печать Следующая >>
Ключевые слова: qemu, freebsd, emulator, windows,  (найти похожие документы)
From: Bachilo Dmitry <root@solink.ru.> Newsgroups: email Date: Mon, 23 Jun 2006 14:31:37 +0000 (UTC) Subject: FreeBSD QEMU + Windows 2000: новые подробности. В статье http://community.livejournal.com/ru_root/710103.html описывался процесс установки Windows 2000. Сатья просто замечательная, но в ней есть упущения, делающие прямой подход к QEMU по статье невозможным. Во-первых в командах запуска QEMU не указана раскладка клавиатуры, что в результате сдвигает всю клавиатуру на 1 клавишу вправо и делает её практически неюзабельной, особенно функциональные клавиши. Во-вторых не указаны некоторые особенности модуля ускорения kqemu и особенности установки Windows 2000. В-третьих, указан стомегабитный сетевой адаптер, не определяющийся в Windows 2000, а следовательно такой винде никак не попасть в сеть, адаптер надо эмулировать другой. Не знаю как у других, а у меня Windows 2003 не увидела вообще ни одного из эмулируемых адаптеров и её попытка её установки таким образом вообще бессмысленна. Ну и главная ошибка автора этой статьи в том, что он предложил использовать какой-то древний бриджинг, совершенно нефункциональный и неудобный (ну это субъективно). Кроме того не рассказано, как быть, если установка идет с Windows-машины с иксами, ведь если виртуальная винда для входа попросит нажать Ctrl+Alt+Del под Windows это невозможно будет сделать. Выход предоставляет сам QEMU. И так, что же собственно предлагается? Лично я бы написал эту статью так: +++ Задача Поставить Windows 2000 Server на qemu под FreeBSD и удаленно ей управлять. +++ Сборка и установка # cd /usr/ports/emulator/qemu # make -DWITH_KQEMU -DWITH_HACKS && make install clean +++ Установка Windows Создаем образ жесткого диска для Windows размером 4Гб: # mkdir /usr/local/win # qemu-img create /usr/local/win/win.img 4096M Лично я ставил это всё на сервер в стойке и потому не имея монитора экспортировал окно QEMU на Windows. Для этого поднял простой X-Server X-Deep и всё, куда проще, чем поднимать Cygwin. И так, во фре, даем команду export DISPLAY=xxx.xxx.xxx.xxx:0 где ххх - это адрес виндоуз машины. Если процесс идет с этой же машины через путти - всё равно. Никаких манипуляций с путти не требуется. Ставим Windows с образа компакт-диска или прямо с диска (тогда -cdrom /dev/acd0): # qemu -k ru -win2k-hack -full-screen -localtime -m 512 \ -cdrom /tmp/win.iso -boot d /usr/local/win/win.img -m 512 ___ количество памяти, которое QEMU отожрет от физической машины. ВНИМАНИЕ! Не давайте отожрать лишнего. Если QEMU съест всю память и весь SWAP, он будет убит. -win2k-hack - чтобы винда не начала жаловаться на отсутствие места на диске. Нужно только при установке. Потом эта опция будет только замедлять работу с диском. -k - чтобы не сдвигать клавиатуру, -full-screen, чтобы работала мышь. Таковы уж виндовые иксы. Когда Windows попросит для входа нажать Ctrl+Alt+Delete, нажмите Ctrl+Alt+3 и попадете в консоль QEMU. Наберите там sendkey ctrl-alt-delete нажмите энтер и затем нажмите Ctrl+Alt+2 чтобы вернуться в виртуальную машину. +++ KQemu KQemu - модуль ядра, обеспечивающий акселерацию qemu, без него вся затея имхо теряет смысл. Подгружаем его: # kldload kqemu Чтобы подгружался автоматически при старте системы, пишем в /boot/loader.conf: kqemu_load="YES" ВНИМАНИЕ! Когда этот модуль включен, в лог и нулевую консоль сыпется мусор типа __kernel: npxdna: fpcurthread == curthread 33966 times__ где-то одна строчка в секунду в течение всего времени, пока запущен QEMU с этим кернел-модулем. Но без него действительное медленнее. ОДНАКО! Если памяти у вас совсем мало, например 256 мегабайт, использование модуля имеет строго обратный эффект. Будьте внимательны. +++ Сеть Как только Windows установлена, сразу хочется увидеть ее работоспособность в сети, для этого: Создаем /etc/qemu-ifup (там по умолчанию qemu ищет скрипт для "-net tap"), туда пишем: kldload bridge sysctl net.link.ether.bridge.enable=1 sysctl net.link.ether.bridge.ipfw=1 # эту строчку пишем, если хотим использовать ipfw для фильтрования # пакетов внутри моста через ipfw. По умолчанию не нужна. sysctl net.link.ether.bridge.ipf=1 # эту строчку пишем, если хотим фильтровать пакеты внутри моста # через ipfilter. По умолчанию не нужна. sysctl net.link.ether.bridge.config=rl0,tap0 # где rl0 - физический сетевой интерфейс, через который виртуальная винда # должна будет видеть вашу сеть. Крайне желательно, чтобы у вас в сети был DHCP-сервер. Windows как-то странно ведет себя со статическим адресом, но может быть, это только у меня... Потом, конечно: # chmod +x /etc/qemu-ifup +++ Использование Запускаем qemu: # qemu -k ru -kernel-kqemu -full-screen -localtime -boot c \ /usr/local/win/win.img -net nic -net tap -m 512 В Windows я поотключал всякие ненужные сервисы и прочее, дал доступ к Terminal Service и залогинился со своей машины. На FreeBSD затем я зафаерволил все нежелательные порты Windows. +++ Уводим в бэкграунд У меня qemu с Windows запускается при загрузке из rc.local следующей строкой: /usr/local/bin/screen -dmS qemu /usr/local/bin/qemu -nographic -parallel null \ -serial null -monitor null -k ru -kernel-kqemu -localtime -net nic -net tap \ -m 512 -boot c /usr/local/win/win.img & Вот и всё.

<< Предыдущая ИНДЕКС Правка src / Печать Следующая >>

Обсуждение [ Линейный режим | Показать все | RSS ]
 
  • 1.1, DukeArtem, 18:49, 23/06/2006 [ответить] [смотреть все]
  • +/
    Мои коментария:
    Молодца!
     
  • 1.2, VecH, 19:23, 23/06/2006 [ответить] [смотреть все]
  • +/
    Ушел пробовать
    автор маладца
     
  • 1.3, Квагга, 20:54, 23/06/2006 [ответить] [смотреть все]
  • +/
    Медленно, блын.

    Зато научился Цигвин ставить и удаленно юзать Гнома с Виндового терминала :)

    Но для демо\тестов\экспериментов Кему конечно рульз!

     
  • 1.4, mikevmk, 23:50, 24/06/2006 [ответить] [смотреть все]
  • +/
    Пошу прощения, но я в заметке http://community.livejournal.com/ru_root/710103.html
    1) описывал установку 2003, а не 2000 и ей, как показала практика, не требуется опция -win2k-hack
    2) Проблем с раскладкой у меня не возникло
    3) Сетевой интерфейс отлично увиделся. И дефолтный (на 10 Мб) и другой (на 100)
    4) Ctrl-alt-del - это не проблема, потому что установленая 2003 с сетью замечательно пускает на удаленный рабочий стол одного алминистратора
    5) Бриджинг - да каюсь. Просто был взят тот, который хорошо мне известен :)

    Так что, видимо, у нас какие-то расхождения в условиях или версиях софта

     
     
  • 2.5, Bocha, 04:34, 25/06/2006 [^] [ответить] [смотреть все] [показать ветку]
  • +/
    Да, так скорее всего и есть, для того я и написал свою версию статьи - на случай... весь текст скрыт [показать] [показать ветку]
     
  • 1.6, chip, 00:43, 26/06/2006 [ответить] [смотреть все]  
  • +/
    > Ну и главная ошибка автора этой статьи в том,  что он предложил использовать какой-то древний бриджинг, совершенно нефункциональный и неудобный

    Использование bridge, как раз и является устаревшим подходом. man bridge наглядно это демонстрирует (с ПЕРВЫХ строк!!!):
         This bridge implementation is made obsolete by: if_bridge(4) and will be removed from future releases.

     
     
  • 2.7, Bocha, 08:33, 26/06/2006 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    - Если я всё правильно понял, это было сделано еще в 5 3 и стех пор bridge ... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.8, chip, 10:43, 26/06/2006 [^] [ответить] [смотреть все]  
  • +/
    bridge if_bridge и по сей день Обе технологии сосуществуют параллельно Это та... весь текст скрыт [показать]
     
     
  • 4.10, Bocha, 07:08, 27/06/2006 [^] [ответить] [смотреть все]  
  • +/
    Вы не читали саму статью чтоли Я же сказал, на сервере уже стоит самба и винс-с... весь текст скрыт [показать]
     
     
  • 5.13, chip, 11:02, 27/06/2006 [^] [ответить] [смотреть все]  
  • +/
    Вы то упоминаете if_bridge, то ng_bridge Остановитесь таки на чем-нибудь А вы ... весь текст скрыт [показать]
     
     
  • 6.14, Bocha, 12:01, 27/06/2006 [^] [ответить] [смотреть все]  
  • +/
    Вы в самом деле не понимаете что я пишу, или просто упрямитесь Еще раз В ориги... весь текст скрыт [показать]
     
     
  • 7.18, chip, 23:56, 27/06/2006 [^] [ответить] [смотреть все]  
  • +/
    man if_bridge не существуется Подразумевалось не существует http www freebs... весь текст скрыт [показать]
     
     
  • 8.19, Bocha, 11:49, 28/06/2006 [^] [ответить] [смотреть все]  
  • +/
    Да, подразумевалось не существует конечно же Спасибо за ссылку Хорошо, bridg... весь текст скрыт [показать]
     
     ....нить скрыта, показать (7)

  • 1.9, lexx, 16:51, 26/06/2006 [ответить] [смотреть все]  
  • +/
    А Win2000 Pro можно поставить вместо сервера?
    Я так понят это что-то типа VMware...
     
     
  • 2.11, Bocha, 07:10, 27/06/2006 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Ставьте на здоровье Но если вы ставите себе винду чтобы работать в еёграфическо... весь текст скрыт [показать] [показать ветку]
     
  • 1.12, markos, 08:19, 27/06/2006 [ответить] [смотреть все]  
  • +/
    А зачем всё это?
    особенно вот это:
    +++ Уводим в бэкграунд
    ???
     
     
  • 2.15, Bocha, 12:02, 27/06/2006 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Статья описывает решение конкретно моей рабочей задачи, где это было нужно - сервер должен быть запущен всегда, с постоянным терминальным доступом для всех. Ну не держать же мне на компе терминал всё время открытый.
     
  • 1.16, fox_mulder_cp, 20:49, 27/06/2006 [ответить] [смотреть все]  
  • +/
    а играться лучше под виндой в куему или в вмваре? и как там с драйверами к физ устройствам?
     
     
  • 2.20, Bocha, 13:02, 28/06/2006 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    в варе лучше, быстрее во всяком случае.
     
  • 1.17, fox_mulder_cp, 21:04, 27/06/2006 [ответить] [смотреть все]  
  • +/
    и еще - как лучше всего вывести его на отдельный виртуал консоль, к примеру на альт-ф12... чтобы Х отдельно а винда отдельно...
     
     
  • 2.21, Bocha, 13:04, 28/06/2006 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    >и еще - как лучше всего вывести его на отдельный виртуал консоль,
    >к примеру на альт-ф12... чтобы Х отдельно а винда отдельно...


    ну вы уже жечь-то заканчивайте :-))) qemu - это такое же окно иксов как и все другие. Ну поднимите еще один икссервер и выводите туда винду посредствам qemu -full-screen. Зачем такие муки?

     
  • 1.22, shmit, 10:19, 22/09/2006 [ответить] [смотреть все]  
  • +/
    зачем ставить иксы ради одного раза если есть такая опция как -vnc display
     
  • 1.23, Guest, 09:52, 27/09/2007 [ответить] [смотреть все]  
  • +/
    Спасибо за статью !
     
  • 1.24, elop, 19:50, 21/03/2008 [ответить] [смотреть все]  
  • +/
    Нашол грамотные сылки по настройки экселератора qemu и прочие полезные вещи http://www.google.ru/
     
  • 1.25, drurus, 13:55, 24/04/2008 [ответить] [смотреть все]  
  • +/
    если указывать -k ru перестает нормально функционировать клава, так например НЕВОЗМОЖНО ввести символ слеша / :))
    проверялл на ноуте, там нум пада нет :)
     
  • 1.26, ja, 12:38, 15/07/2008 [ответить] [смотреть все]  
  • +/
    Возникла проблема с установкой qemu под freebsd7.0, просит указать пачи для freebsd. Никто незнает как это можно вылечить или хотяб что это за пачи и где их взять. Поиск по нету ничего не дал :(

    Но всеже я его установил через pkg_add -k qemu. но при запуске он выдает Segmentation fault.

     
     
  • 2.27, max_demon, 02:27, 07/10/2008 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    попробуй поставить qemu-devel, ставит всё что нужно!
     

    Ваш комментарий
    Имя:         
    E-Mail:      
    Заголовок:
    Текст:





      Закладки на сайте
      Проследить за страницей
    Created 1996-2017 by Maxim Chirkov  
    ДобавитьРекламаВебмастеруГИД  
    Hosting by Ihor