Linux консольная виртуальная машина

IT Инструкции

В данной статье представленно краткое описание команд для создания и управления виртульными машинами через терминал Linux.

Для начала необходимо осмотреться, просмотреть свойства системы, а так же список типов поддерживаемых ОС

vboxmanage list systemproperties
vboxmanage list ostypes

  • —cpus — кол-во процессоров;
  • —memory — выделяемая память ОЗУ;
  • —audio поддержка звука;
  • —usb поддержка usb контроллера;
  • —boot1 устройство с которого происходит загрузка (dvd, hdd);
  • —nic1 тип сетевого подключения: bridged — сетевой мост; nat — NAT.
  • —stiragectl — наименование контроллера;
  • —port — номер порта;
  • —device — номер устройства;
  • —type — тип устройства;
  • —medium — расположение файла жесткого диска.

vboxmanage list runningvms
«VMT»

Просмотр доступных USB устройств осуществляется командой
vboxmanage list usbhost
Изначально usb устройства доступны только под правами суперпользователя, для того, что бы устройства были видны вашему пользователю его необходимо добавить в групу vboxusers, после этого желательно перезагрузится.
теперь когда устройсва доступны мы получаем следующий ответ:

UUID: 8eaa2ee4-108d-4761-aaf6-60994b88b18e
VendorId: 0x0951 (0951)
ProductId: 0x1642 (1642)
Revision: 1.0 (0100)
Port: 4
USB version/speed: 2/High
Manufacturer: Kingston
Product: DT 101 G2
SerialNumber: 001CC07CEB7FFBB0691E2397
Address: sysfs:/sys/devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.5//device:/dev/vboxusb/002/006
Current State: Busy

Интересуют первые три строки: UUID, Vendorid, productid.
Для того, что бы подключить интересующие нас устройство к виртульной машине используется следующая команда:
vboxmanage controlvm VMT usbattach «UUID»
Для отключения:
vboxmanage controlvm VMT usbdetach «UUID»

В случае если нам нужно что-бы usb устройство подключалось как только включается ВМ (например подключение ключей программного обеспечения) используется следующая команда:

vboxmanage usbfilter add 1 —target «VMT» —name usbfl —vendorid 0951 —productid 1642

  • add — порядковый номер (0-N);
  • —target — имя ВМ;
  • —name — Наименованеи фильтра;
  • —vendorid — вендор ID usb устройства;
  • —productid — ID продукта usb устройства.

Для автозапуска ВМ прощего всего написать небольшой скрипт и добавить его в Crontab. Текст простейшего скрипта

#/bin/sh
sleep 120s //Пауза необходимо выдержать время после запуска физичской машины.
vboxmanage startvm VMT —type headless // команда на запуск ВМ

Далее выполняем команду:
crontab -e
и в самы конец дописываем
@reboot sh /путь к скрипту

На этом все, все выполненые действия возможно просмотреть на видео:

Источник

Управляем VirtualBox через консоль

Благодаря своей бесплатности и открытости VirtualBox приобрёл значительную популярность в качестве системы виртуализации. Несмотря на то, что VirtualBox обладает удобным графическим интерфейсом, разработчики оставили возможность управления через консольные команды. Зачем? Для тех случаев, когда графический интерфейс недоступен. Как правило, это относится к серверам.

Читайте также:  Linux user setting file

В этой небольшой статье мы создадим и настроим виртуальную машину в VirtualBox через терминал Linux. Для управления VirtualBox существует команда VBoxManage (естественно, она будет доступна только после установки VirtualBox в системе). Синтаксис команды выглядит так:

VBoxManage [общие_опции] [команда] [опции_команды]

Создание виртуальной машины

Задать местоположение каталога с виртуальными машинами можно командой вида:

vboxmanage setproperty machinefolder [путь_к_каталогу]

vboxmanage setproperty machinefolder /home/test/virtualbox/

Управляем VirtualBox через консоль

При создании виртуальной машины нам нужно указать тип операционной системы, которая будет установлена на этой машине. Для просмотра доступных типов ОС используем команду:

Нас интересует пункт ID.

Управляем VirtualBox через консоль

Если мы хотим создать виртуальную машину с 64-битной Windows 10, то идентификатор такой операционной системы будет Windows10_64, а команда будет выглядеть следующим образом:

vboxmanage createvm --name "Windows 10" --ostype "Windows10_64" --default --register

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

Посмотреть информацию о свежесозданной машине можно командой:

vboxmanage showvminfo "Windows 10"

Управляем VirtualBox через консоль

Также мы можем вывести список доступных нам виртуальных машин, чтобы убедиться, что новая машина в нём появилась:

Управляем VirtualBox через консоль

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

Давайте дадим нашей виртуальной машине хотя бы 2 ГБ оперативной памяти:

vboxmanage modifyvm "Windows 10" --memory 2048
vboxmanage modifyvm "Windows 10" --vram 256

А также предоставим доступ к двум ядрам CPU:

vboxmanage modifyvm "Windows 10" --cpus 2
vboxmanage showvminfo "Windows 10"

И видим, что настройки применились.

Управляем VirtualBox через консоль

Теперь перейдём к накопителю, где будет храниться информация.

Создадим новый виртуальный накопитель для нашей машины:

vboxmanage createhd --filename "/home/test/virtualbox/Windows 10/Windows10.vdi" --size 10000 --format VDI

Управляем VirtualBox через консоль

В команде мы указали путь к файлу накопителя, его размер в мегабайтах и тип накопителя.

Далее нам надо создать для нашей машины SATA-контроллер, к которому будет подсоединён накопитель.

vboxmanage storagectl "Windows 10" --name "SATA Controller" --add sata --controller IntelAhci

Подсоединяем к контроллеру накопитель:

vboxmanage storageattach "Windows 10" --storagectl "SATA Controller" --port 0 --device 0 --type hdd --medium "/home/test/virtualbox/Windows 10/Windows10.vdi"

Однако, на виртуальной машине ещё не установлена операционная система. Ставить её мы будем из образа. А для этого нам понадобится IDE-контроллер:

vboxmanage storagectl "Windows 10" --name "IDE Controller" --add ide --controller PIIX4

Подключаем к нему образ с операционной системой:

vboxmanage storageattach "Windows 10" --storagectl "IDE Controller" --port 1 --device 0 --type dvddrive --medium ~/Win10_1909_Russian_x64.iso

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

Читайте также:  Cmake find package linux

Для включения удалённого доступа используем команду:

vboxmanage modifyvm "Windows 10" --vrde on

Просто так воспользоваться удалённым доступом у нас не получится — придётся установить Oracle VM VirtualBox Extension Pack.

Для начала проверим, что у нас установлено:

Управляем VirtualBox через консоль

Нас интересует строка VRDE Module. В её значении должно присутствовать RDP, а не VNC.

Нам нужно скачать набор расширений. Качается он под ту версию VirtualBox, что у вас установлена. Скорее всего, вы знаете номер версии, но, если что, проверить его можно командой:

Управляем VirtualBox через консоль

После скачивания набора расширений устанавливаем его командой

sudo vboxmanage extpack install ~/Oracle_VM_VirtualBox_Extension_Pack-6.0.6.vbox-extpack

Придётся принять лицензионное соглашение и дождаться завершения установки.

Управляем VirtualBox через консоль

Управление виртуальной машиной

Для запуска виртуальной машины используем команду:

vboxmanage startvm "Windows 10" --type headless

Далее для управления состояния виртуальной машины будем использовать команду controlvm .

Чтобы поставить машину на паузу, введём команду:

vboxmanage controlvm "Windows 10" pause

Для вывода из состояния паузы:

vboxmanage controlvm "Windows 10" resume

Для выключения виртуальной машины:

vboxmanage controlvm "Windows 10" poweroff

Для сохранения состояния виртуальной машины:

vboxmanage controlvm "Windows 10" savestate

Чтобы послать сигнал нажатия на кнопку выключения:

vboxmanage controlvm "Windows 10" acpipowerbutton

Для вывода виртуальной машины из состояния блокировки (например, если неожиданно была прервана подача электропитания):

vboxmanage startvm "Windows 10" --type emergencystop

Подключение ранее созданной виртуальной машины

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

vboxmanage registervm /home/test/virtualbox/macos/macos.vbox

Вместо заключения

В данной статье мы рассмотрели базовые операции с виртуальной машиной, которые можно совершить через терминал Linux. Были изучены создание виртуальной машины, её первоначальная настройка, подключение уже существующей виртуальной машины. Если вас заинтересовало управление VirtualBox через консоль, вы можете продолжить изучение возможностей команды vboxmanage самостоятельно.

Источник

Управление VirtualBox с помощью консоли

Скачиваем с официального сайта VirtualBox пакет для Ubuntu 9.04
После того, как скачали, выполняем комманду:
dpkg -i virtualbox-2.2_2.2.2-46594_Ubuntu_jaunty_i386.deb
VirtualBox должен установится. Если возникла проблемы при установке пакета, изучите сообщение об ошибках. Возможно у вас не установлены необходимые пакеты. В моем случае у меня не был установлен пакет libxslt1.1, что моментально было исправлено командой sudo apt-get install libxslt1.1 .
Добавляем себя в группу vboxusers
sudo usermod -a -G vboxusers имя_пользователя

Читайте также:  Linux set system variable

Создание виртуальной машины

  1. Для начала создадим машину и сразу её зарегистрируем
    VBoxManage createvm -name имя_виртуальной_машины -register
  2. Далее необходимо создать диск для машины
    VBoxManage createhd —filename имя_диска —size размер_диска_в_мегабайтах
    Существует возможность выбрать тип диска VDI (VirtualBox), VMDK (VMWare), VHD (Microsoft Virtual PC). По умолчанию, конечно же, VDI :).
  3. Делаем дополнительные настройки нашей виртуальной машины. Укажем:
    • Тип гостевой ОС. Для получения списка поддерживаемых ОС выполните команду VBoxManage list ostypes
    • Размер выделяемой памяти
    • Наименование главного диска
    • Возможность использовать VRDP (VirtualBox Remote Desktop Protocol)

    VBoxManage modifyvm имя_виртуальной_машины —ostype тип_ОС —memory размер_памяти_в_мегабайтах —hda имя_диска —vrdp on

  4. Подключим образ диска, с которого будем ставить Windows XP
    • Зарегестрируем DVD с образом дистрибутива системы
      VBoxManage openmedium путь_до_образа
    • Вставим наш диск в виртуальный привод
      VBoxManage modifyvm WindowsXP —dvd путь_до_образа

  5. Посмотрим на настройки нашей машины. Убеждаемся, что все нас устраивает и…
    VBoxManage showvminfo имя_машины

… Запуск… Поехали

Чтобы запустить виртуальную машину надо выполнить
VBoxManage startvm имя_машины —type vrdp
Параметр —type vrdp нужен, чтобы подключиться к машине с помощью VRDP
Все, теперь осталось подключится к нашей машине, с помощью удаленного рабочего стола. Это можно сделать с помощью стандартных утилит: для windows это mstsc, для никсовых систем rdesktop.Т.к. у нас есть только консоль, то надо воспользоваться компьютером, имеющим графический рабочий стол.
Чтобы подключится, надо указывать IP хост машины и порт для данной виртуальной машины. В моем случае, я ничего не менял и использовал порт по умолчанию (3389). Чтобы изменить порт, выполните VBoxManage —vrdpport порт . Если у Вас установлено несколько виртуальных машин, то для того, чтобы подключаться к каждой их них, необходимо в настройках указать различные порты, например, для первой машины 3389, для второй 3390 и т.п.

Вместо эпилога

Теперь у нас запущена виртуальная машина и мы к ней спокойно можем подключаться используя протокол VRDP. Я спокойно установил Window XP, находясь за своим рабочим компьютером.

P.S. Windows XP была нужна только по одной причине. В проекте нужно было использовать MS SQL Server.

Полезные ссылки:

UPD: bsdemon предложил ещё один способ. Использовать libvirt

Источник

Оцените статью
Adblock
detector