The OpenNET Project / Index page

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

Запуск Windows XP в окружении Xen3 (netbsd windows xen virtual)


<< Предыдущая ИНДЕКС Правка src / Печать Следующая >>
Ключевые слова: netbsd, windows, xen, virtual,  (найти похожие документы)
From: Михаил Сгибнев <mixa(@).dreamcatcher.ru> Date: 2006-09-13 16:46:00 Subject: Запуск Windows XP в окружении Xen3
Сгибнев Михаил

Вольный перевод и дополнение этого письма и Руководства пользователя.

В первую очередь, для установки Windows XP, как и любой другой системы с закрытым кодом, необходима поддержка центральным процессором технологии виртуализации Intel╝Virtualization Technology (VT) или Pacifica (AMD). Таблицу поддержки для процессоров Intel можно посмотреть здесь. Также необходимо обеспечить поддержу VT самим Xen. Для этого необходимо установить следущие пакеты:
  • dev86 Ассемблер и линкер для реального режима 80x86. Этот пакет необходим для сборки кода BIOS, запускаемого в (виртуальном) реальном режиме. Если пакет dev86 недоступен для x86_64, то можно использовать i386 версию.
  • LibVNCServer Немодифицируемый VGA дисплей, клавиатуру и мышь можно виртуализировать с помощью библиотеки vncserver. Взять ее можно здесь. Поскольку в версии 0.8 наблюдалось падение производительности, то рекомендуется использовать версию из CVS-репозитория.
  • SDL-devel, SDL Если пакеты SDL и SDL-devel не были установлены по умолчанию, то взять их можно из системы портов или скомпилировав из исходных текстов.
В терминологии Xen, немодифицируемые гостевые домены называются VMX. Для облегчения процесса конфигурирования такого домена служит образцово-показательный конфигурационный файл /etc/xen/xmexample.vmx, в котором помимо традиционных опций есть и сугубо специфические.
  • kernel VMX firmware loader, /usr/lib/xen/boot/vmxloader
  • builder Функции сборки домена. VMX-домены используют vmx builder
  • acpi Задействует ACPI VMX-домена, по умолчанию равно "0" (отключено)
  • apic Задействует APIC VMX-домена, по умолчанию равно "0" (отключено)
  • pae Задействует PAE VMX-домена, по умолчанию равно "0" (отключено)
  • vif Опционально определяет MAC адрес и/или режим моста для сетевого интерфейса. Если значение MAC не указано, то назначается случайный адрес. Есть возможность задать параметр type=ioemu для использования ioemu в VMX NIC. Если это значение не определено, то vbd используется как паравиртуальных("нормальных", с модифицированным ядром) доменах.
  • disk Определяет дисковые устройсва, к которым гостевой домен должен иметь доступ. Если для домена используется физический носитель в качестве диска, то он должен быть описан строкой типа:
      
      phy:UNAME,ioemu:DEV,MODE,
      
      
    Где UNAME - имя устройства, DEV - имя диска, как его видит домен и MODE принимает значения r для read-only и w для read-write. Если это значение не определено, то ioemu используется как паравиртуальных доменах.

    Если используется образ диска, то строка принимает вид:
      
      file:FILEPATH,ioemu:DEV,MODE
      
      
    Если используется больше одного диска, то они разделяются запятой. Например:
      
      disk = ['file:/var/images/image1.img,ioemu:hda,w', 'file:/var/images/image2.img,ioemu:hdb,w']
      
      
  • cdrom Образ CD-ROM. По умолчанию, для Domain0 это значение равно /dev/cdrom. Внутри VMX-домена CD-ROM будет виден как /dev/hdc.
  • boot Загрузка с floppy (a), hard disk (c) или CD-ROM (d).
  • device_model Инструмент эмуляции устройств для VMX-домена. Могут быть изменены параметры, приведенные ниже.
  • sdl Задействует библиотеку SDL для отображения графики, по умолчанию равно "0" (отключено)
  • vnc Задействует библиотеку VNC для отображения графики, по умолчанию равно "0" (отключено)
  • vncviewer Если vnc=1 и vncviewer=0, пользователь может использовать vncviewer для подключения к VMX-домену. Например:
      
      vncviewer domain0_IP_address:VMX_domain_id
      
      
  • ne2000 Задействует режим совместимости ne2000, по умолчанию равно "0" (отключено, используется pcnet)
  • serial Перенаправление последовательных портов гостевого домена на реальное устройство.
  • usb Включение поддержки USB без указания специфического устройства. По умолчанию эта функция отключена, в случае же определения параметра usbdevice, ее необходимо задействовать.
  • usbdevice Включение поддержки конкретных устройств. Например, поддержка мыши PS/2 через USB:
      
      usbdevice='mouse'
      
      
  • localtime Установка локального времени. По умолчанию равно "0", т.е UTC
  • enable-audio Поддержка звука. Находится в разработке.
  • full-screen Поддержка полноэкранного режима. Находится в разработке.
  • nographic Другой способ перенаправить вывод на последовательный порт. В этом случае опции 'sdl' или 'vnc' не работают. Использование данного режима не рекомендуется.
Установка самого Xen достаточно хорошо описана в статьях:
Установка и настройка виртуальной машины Xen на NetBSD-3.0
NetBSD/xen Howto
Виртуализация с помощью Xen в Linux

После загрузки самого Dom0 убедимся в наличии поддержки VMX:
    
       [root@vermont ~]# xm dmesg | grep VMX
       (XEN) VMXON is done
       (XEN) VMXON is done
    ...
       (XEN) VMXON is done
       (XEN) VMXON is done
       (XEN) VMXON is done
       [root@vermont ~]#
    
    
Если у вас другое сообщение, то проверьте настройки BIOS и, если вы этого еще не сделали, задействуйте поддержку VT.

Создаем образ диска Xen:
    
    # mkdir -p /root/xenimages
    # cd /root/xenimages
    # dd if=/dev/zero of=WS128.img bs=1M count=4096
    
    
Также необходимо создать iso-образ системы WinXP - ServicePack2. В данном случае, разместим его в каталоге /root/xenimages.

На основе эталонного файла конфигурации создадим свой собственный:
    
    [root@vermont xen]# cat /etc/xen/winXP128
       kernel = "/usr/lib/xen/boot/hvmloader"
       builder='hvm'
       memory = 512
       name = "WinXP128"
       vcpus=1
       pae=0
       acpi=0
       apic=0
       cpus = ""
       vif = [ 'type=ioemu, bridge=xenbr0' ]
       disk = [ 'file:/root/xenimages/winXP128.img,ioemu:hda,w' ]
       on_poweroff = 'destroy'
       on_reboot   = 'destroy'
       on_crash    = 'destroy'
       device_model = '/usr/lib/xen/bin/qemu-dm'
       cdrom='/root/xenimages/en_winxp_pro_with_sp2.iso'
       boot='d'
       sdl=0
       vnc=1
       vncviewer=0
       stdvga=0
       serial='pty'
       ne2000=0
    [root@vermont xen]#
    
    
Обратите внимание на то, что указан параметр boot='d', что необходимо для установки. Впоследствии его необходимо заменить на "boot='c'". Доступ к гостевому домену будет осуществляться через VNC, использование SDL не предполагается.

Начинаем установку и подсоединяемя к домену с помощью VNC - сразу после создания домена подключаемся к нему с помощью vncviewer.
    
    # xm create -c /etc/xen/winXP128
    Using config file "/etc/xen/winXP128".
    Started domain WinXP128
    
    
Подключение к VNC:
    
    % vncviewer vermont:1
    
    
С установкой могут быть проблемы. Решение описано в этом письме и заключается в том, что на экране установки, предлагающем нажать F6 для установки SCSI или RAID контроллера надо нажать F5 и из предложенного меню:
    
    ACPI Multiprocessor PC 
    ACPI Uniprocessor PC 
    Advanced Configuration and Power Interface (ACPI) PC 
    Compaq SystemPro Multiprocessor or 100% Compatible PC 
    MPS Uniprocessor PC 
    MPS Multiprocessor PC 
    Standard PC 
    Standard PC with C-Step i486 
    Other
    
    
выбрать "Standard PC".

После того, как программа установки Windows отформатирует диск и скопирует на него необходимые файлы настанет неизбежный момент перезагрузки. Согласно нашему файлу конфигурации, виртуальная машина будет закрыта и нам предоставится удачная возможность отредактировать параметр boot='c', после чего запускаем виртуальную машину и соединяемся с консолью:
    
    [root@vermont xen]# xm create -c /etc/xen/winXP128
        Using config file "/etc/xen/winXP128".
        Started domain WinXP128
    
    
VNC:
    
    % vncviewer vermont:2
    
    
Обратите внимание на параметр ':2', так как изменился XenID (посмотреть его можно командой xm list). Не особо волнуйтесь насчет проблем VNC при работе с мышью. Как только вы завершите установку можно настроить службу терминального доступа и использовать Windows Remote Desktop или rdesktop. Если вы по прежнему хотите использовать VNC, то обратитесь к этому разделу руководства.

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

Обсуждение [ RSS ]
 
  • 1, quasi (?), 07:55, 20/09/2007 [ответить]     [к модератору]
  • +/
    Есть сервер с виртуальными машинами на базе Ксен Гостевые на базе никс-систем з... весь текст скрыт [показать]
     

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




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