Це стара версія документу!
Запуск виртуальной машины в VirtualBox без GUI
Запуск виртуальной машины в VirtualBox без GUI
VirtualBoxИногда возникает необходимость запустить виртуальную машину на хосте без иксов. Я расскажу о том как это сделать, имея доступ к хостовой системе только по ssh + rdp (Remote Desktop Protocol). процесс я буду описывать для OC Ubuntu 9.10 в качестве хоста.
Начнем с установки VirtualBox.
Предварительно нужно установить пакет dkms (Dynamic Kernel Module Support Framework): sudo apt-get install dkms
На сайте VirtualBox-а предлагается 2 варианта: прописать источник пакетов (deb download.virtualbox.org/virtualbox/debian karmic non-free) в /etc/apt/sources.list либо скачать и установить deb-пакет. Когда я прописал источник и сделал sudo apt-get install virtualbox-3.1 у меня потянулась куча пакетов из зависимостей (в том числе и каких-то для GUI интерфейса). Поэтому лучше скачать deb-пакет. Качаем, устанавливаем: sudo dpkg -i virtualbox-3.1_3.1.0-55467_Ubuntu_karmic_i386.deb
возможно тут также потребуются зависимости (какие-то библиотеки для парсинга xml, в котором хранятся конфиги, но их значительно меньше чем в первом случае). Если установка не завершилась из-за зависимостей, можно просто сделать sudo apt-get -f install
при этом установятся зависимости и VirtualBox
ок. VirtualBox поставили. Начнем создавать guest-машины.
создаем саму машину: VBoxManage createvm –name ubuntu –ostype Ubuntu –register
(name — имя машины, ostype — тип системы. полный список всех типов можно узнать командой VBoxManage list ostypes)
настраиваем VBoxManage modifyvm ubuntu –memory 512 –floppy disabled –audio none –nic1 bridged –bridgeadapter1 eth0 –vram 4 –accelerate3d off –boot1 disk –acpi on –cableconnected1 on –usb off –vrdp on –vrdpport 3390
тут с большего все понятно. в качестве типа сети можно указать также NAT (–nic1 nat). также включаем rdp
создаем hdd диск для виртуальной машины: VBoxManage createhd –filename /home/user/vbox/ubuntu.vdi –size 20000 –register
добавляем контроллер IDE в нашу машину VBoxManage storagectl ubuntu –name “IDE Controller” –add ide
цепляем на IDE0 созданный ранее hdd VBoxManage storageattach ubuntu –storagectl “IDE Controller” –port 0 –device 0 –type hdd –medium /home/user/vbox/ubuntu.vdi
на IDE1 цепляем установочный образ VBoxManage storageattach ubuntu –storagectl “IDE Controller” –port 1 –device 0 –type dvddrive –medium /home/user/vbox/iso/ubuntu-9.10-alternate-i386.iso
говорим машине грузиться с диска VBoxManage modifyvm ubuntu –boot1 dvd
запускаем машину nohup VBoxHeadless –startvm ubuntu &
для того чтобы поставить базовую систему воспользуемся rdp-клиентом (у меня KDE, в стандартную поставку входит KRDC). коннектимся на хостовую машину на порт, который указали в настройках (–vrdpport 3390), ставим систему, делаем sudo apt-get install openssh-server. теперь на виртуальную машину можно попасть по ssh
останавливаем виртуальную машину VBoxManage controlvm ubuntu acpipowerbutton
через acpi или более жестко VBoxManage controlvm ubuntu poweroff
говорим грузится с hdd VBoxManage modifyvm ubuntu –boot1 disk
можно также отцепить установочный диск VBoxManage storageattach ubuntu –storagectl “IDE Controller” –port 1 –device 0 –medium none
и снова запускаем nohup VBoxHeadless –startvm ubuntu &
еще полезные команды: VBoxManage list runningvms
просмотр всех запущенных машин VBoxManage showvminfo ubuntu
просмотр информации о виртуальной машине
таким образом на одной машине с минимально установленной системой можно поднимать несколько виртуальных для различных целей и экспериментов
источник
VirtualBox на FreeBSD без X11
VirtualBox на FreeBSD без X11 imageНа данный момент, порт VirtualBox на FreeBSD уже достаточно стабилен и вполне пригоден для постоянного использования. Но при установке на gui-less машинах возникает несколько проблем. Дальше речь пойдет об установке и использовании VirtualBox на FreeBSD машине без X11.
Установка VirtualBox
Текущая актуальная версия порта VirtualBox — 3.1.2. Начиная, с 3.1.0 версии порт разбит на два: virtualbox-ose-kmod (модули ядра) и virtualbox-ose (сам virtualbox).
Под FreeBSD портирована только VirtualBox OSE (Open Source Edition). В ней, по сравнению с полным VirtualBox, нет поддержки USB устройств, а главное — вырезан vRDP сервер, который позволяет подключаться к виртуальной машине любым rdp клиентом. Без него и без x11, для установки ОС на виртуальную машину потребуется ставить ее на отдельном компьютере и потом переносить образ диска на FreeBSD машину.
Эту проблему решил один из разработчиков FreeNAS, прикрутив к VirtualBox vnc-сервер. Итак, далее собственно установка VirtualBox.
Первым делом ставим библиотеки vnc-сервера и модули ядра VirtualBox: cd /usr/ports/net/libvncserver && make make install cd /usr/ports/emulators/virtualbox-ose-kmod && make make install
После этого качаем патч для VirtualBox: cd ~/patches fetch www.mail-archive.com/freebsd-stable@freebsd.org/msg108586/vboxvnc-20100211.tar.gz cd /usr/ports/emulators/virtualbox-ose tar xvf ~/patches/vboxvnc-20100211.tar.gz
Делаем make config
снимаем все галочки, кроме Guest Additions и DBUS, и ставим VirtualBox: make make install
Добавляем загрузку модуля VirtualBox и запуск скрипта для возможности работы адаптера виртульной машины в bridge-режиме (без нее — только NAT): echo 'vboxdrv_load=“YES”' » /boot/loader.conf echo 'vboxnet_enable=“YES”' » /etc/rc.conf
Чтобы лишний раз не перезагружаться, вручную грузим модуль и скрипт: kldload vboxdrv /etc/rc.d/vboxnet start Создание и настройка виртуальной машины
Создание виртуальной машины из консоли описано в этой статье, поэтому приведу только последовательность команд: # Создаем виртуалку (посмотреть все возможные ostype: VBoxManage list ostype) VBoxManage createvm –name MicroXP –ostype WindowsXP –register
# Задаем парамерты виртуалки (bridgeadapter1 указывает адаптер хоста, к которому привязываем виртуалку) VBoxManage modifyvm MicroXP –memory 256 –floppy disabled –audio none –nic1 bridged –bridgeadapter1 eth0 –vram 4 –accelerate3d off –boot1 disk –acpi on –cableconnected1 on
# Создаем жесткий диск, размер указывается в мегабайтах VBoxManage createhd –filename /usr/local/vbox/iso/MicroXP.vdi –size 1000 –register
# Создаем контроллер на виртуалке VBoxManage storagectl MicroXP –name “IDE Controller” –add ide
# Цепляем диск к контроллеру VBoxManage storageattach MicroXP –storagectl “IDE Controller” –port 0 –device 0 –type hdd –medium /usr/local/vbox/MicroXP.vdi
# Цепляем установочный образ к контроллеру VBoxManage storageattach MicroXP –storagectl “IDE Controller” –port 1 –device 0 –type dvddrive –medium /usr/local/vbox/MicroXP-v0.82.iso
# Устанавливаем загрузку с установочного образа VBoxManage modifyvm MicroXP –boot1 dvd
Далее, запускаем машину и указываем ей параметры vnc: VBoxHeadless –startvm MicroXP -v on -a 192.168.1.1 -p 5900 -S password
Поключаемся vnc-клиентом (например, UltraVNC под виндой) и ставим ОС. Затем нужно поставить guest additions в виртуалку, без них vnc сервер иногда глючит: VBoxManage storageattach MicroXP –storagectl “IDE Controller” –port 1 –device 0 –type dvddrive –medium /usr/local/lib/virtualbox/additions/VBoxGuestAdditions_3.1.2.iso
После этого, виртуальная машина готова к использованию: Полезные ссылки
VirtualBox — FreeBSD Wiki VirtualBox headless VNC support Запуск виртуальной машины в VirtualBox без GUI
источник