VirtualBox

Материал из ALT Linux Wiki
(перенаправлено с «Virtualbox»)
VirtualBox
User-menu-VirtualBox.png
Vb finished4.png
Разработчик(и) Oracle
Первый разработчик Innotek
Первый выпуск 2007
Лицензия GNU GPL 2, Проприетарная
Сайт virtualbox.org
Репозиторий virtualbox

VirtualBox (Oracle VM VirtualBox) — программный продукт виртуализации для операционных систем Windows, Linux, FreeBSD, macOS, Solaris/OpenSolaris, ReactOS, DOS и других.


Возможности VirtualBox

  • Кроссплатформенность
  • Модульность
  • Поддержка USB 2.0, когда устройства хост-машины становятся доступными для гостевых операционных систем (только в проприетарной версии)
  • Поддержка 64-битных гостевых систем[18] (начиная с версии 2.0), даже на 32-битных хост-системах[19] (начиная с версии 2.1, для этого обязательна поддержка технологии виртуализации процессором)
  • Поддержка SMP на стороне гостевой системы (начиная с версии 3.0, для этого обязательна поддержка технологии виртуализации процессором)
  • Встроенный RDP-сервер, а также поддержка клиентских USB-устройств поверх протокола RDP (только в проприетарной версии)
  • Экспериментальная поддержка аппаратного 3D-ускорения (OpenGL, DirectX 8/9 (с использованием кода wine) (только в 32-битных Windows 2000, XP, Vista, 7 и 8, для гостевых DOS / Windows 3.x / 95 / 98 / ME поддержка аппаратного 3D-* ускорения не предусмотрена)
  • Поддержка образов жёстких дисков VMDK (VMware) и VHD (Microsoft Virtual PC), включая snapshots (начиная с версии 2.1[20])
  • Поддержка iSCSI (только в проприетарной версии)
  • Поддержка виртуализации аудиоустройств (эмуляция AC’97 или Sound Blaster 16 или Intel HD Audio на выбор)
  • Поддержка различных видов сетевого взаимодействия (NAT, Host Networking via Bridged, Internal)
  • Поддержка цепочки сохраненных состояний виртуальной машины (snapshots), к которым может быть произведён откат из любого состояния гостевой системы
  • Поддержка Shared Folders для простого обмена файлами между хостовой и гостевой системами (для гостевых систем Windows NT 4.0 и новее, Linux и Solaris)[21]
  • Поддержка интеграции рабочих столов (seamless mode) хостовой и гостевой операционной системой
  • Поддержка формата OVF/OVA
  • Есть возможность выбора языка интерфейса (поддерживается и русскоязычный интерфейс)
  • Базовая версия полностью открыта по лицензии GNU GPL, соответственно нет ограничений в использовании


Примечание: Если в качестве гостевой системы устанавливается дистрибутив Альт, не используйте профиль ALT Linux (можно использовать, например, Other Linux).


Внимание! Если запуск ВМ прерывается ошибкой:
VirtualBox can't operate in VMX root mode. Please disable the KVM kernel extension, recompile your kernel and reboot (VERR_VMX_IN_VMX_ROOT_MODE)

Это означает, что KVM уже использует аппаратную виртуализацию, а VirtualBox пытается получить к ней доступ.

Временное решение отключение KVM (до перезагрузки):

  1. Определить какой модуль загружен (kvm_intel или kvm_amd):
    # lsmod | grep kvm
    kvm_intel             417792  0
    kvm                  1343488  1 kvm_intel
    
  2. Отключить загруженный модуль (в данном примере kvm_intel):
    # rmmod kvm_intel
    
  3. Запустить сервис VirtualBox, который подгрузит модули ядра VirtualBox:
    # systemctl start virtualbox.service
    

Для постоянного отключения KVM нужно занести соответствующий модуль в черный список, например:

# echo "blacklist kvm_intel" > /etc/modprobe.d/blacklist-kvm-intel.conf


Установка

Перед установкой пакета VirtualBox, настоятельно рекомендуется обновить систему и ядра. Подробнее об обновлении системы можно прочитать тут Управление_пакетами.

# apt-get update
# apt-get dist-upgrade

Установка пакета VirtualBox производится в режиме супер пользователя. Необходимо установить пакет с модулем и добавить пользователя в группу.

Установка пакета:

# apt-get install virtualbox 

Установка модуля ядра

Обновляем ядрo

Важно! Перед любой установкой модуля ядра, надо обновить само ядро, чтобы при установке модуля ядра не установилось голое ядро без других необходимых ядерных пакетов
# update-kernel -y

Смотрим ядро с каким flavour у вас установлено

$ uname -r
6.12.35-6.12-alt1

В данном случае имеем ядро 6.12

Устанавливаем сам модуль ядра, например для flavour 6.12 даём команду:

# apt-get install kernel-modules-virtualbox-6.12
Важно! Не для всех flavour существуют модули kernel-modules-virtualbox, предварительно проверьте, что модуль существует
Важно! Если ядро обновилось, то потребуется перезагрузка.


Важно! Если вы обновили VirtualBox, а ядро давно не обновляли, вероятно, что VirtualBox не будет работать с вашим старым ядром. Необходимо обновить ядро и/или модули:
# update-kernel -f

Модули VirtualBox должны быть той же версии что и версия ядра:

  • kernel-modules-virtualbox-"тип_ядра"-"версия_программы_virtualbox"-"номер_сборки_ядра"
  • virtualbox-guest-additions-"версия_программы_virtualbox"-"номер_сборки_ядра"


Добавление пользователя в группу:

# gpasswd -a user22 vboxusers

где user22 - реальное имя пользователя

Также, необходимо перезагрузить систему. Это можно сделать с помощью команды:

# reboot

Установка Oracle Extension Pack

Пакет расширений Oracle VM VirtualBox Extension Pack предоставляет следующие дополнительные функции:

  • поддержка USB 2.0 и USB 3.0;
  • поддержка протокола VirtualBox Remote Desktop Protocol (VRDP) — позволяет подключаться к виртуальной системе удалённо с помощью любого RDP-совместимого клиента;
  • проброс веб-камеры хоста;
  • Intel PXE boot ROM — загрузка операционной системы по сети;
  • шифрование образа диска алгоритмом AES.

Пакет расширений Oracle VM VirtualBox Extension Pack содержит закрытые компоненты и распространяется под проприетарной лицензией PUEL (бесплатно только в персональных целях или для ознакомления).

Файлы пакетов расширений VirtualBox имеют расширение .vbox-extpack. Скачать файл пакета для своей версии VirtualBox можно на официальном сайте программы https://www.virtualbox.org/wiki/Downloads. Устанавливать следует гостевые дополнения той же версии, что и установленная версия VirtualBox (при обновлении VirtualBox'a нужно обновить и Extension Pack).

Установку дополнения можно запустить из графического интерфейса или из командной строки:

# VBoxManage extpack install /path/to/Oracle_VM_VirtualBox_Extension_Pack-<version>.vbox-extpack


Важно! Доступен еще один пакет расширений — VNC. Этот пакет расширений имеет открытый исходный код и доступен в пакете virtualbox.

Можно установить как пакет Oracle VM VirtualBox Extension Pack, так и VNC, но одновременно может быть доступен только один модуль VRDE.

Команда переключения на модуль VNC VRDE в VNC (доступ к ВМ по протоколу VNC):

$ VBoxManage setproperty vrdeextpack VNC

Команда переключения на модуль VRDP (доступ к ВМ по протоколу RDP):

$ VBoxManage setproperty vrdeextpack "Oracle VM VirtualBox Extension Pack"


Запуск VirtualBox

Есть два варианта запуска программы VirtualBox:

  • Через меню
  • Через терминал

Запуск через меню

Чтобы запустить программу VirtualBox через меню необходимо:

  • Нажать на меню
  • Выбрать вкладку "Системные"
  • Выбрать "Визуализатор VirtualBox"

Vb start2.png

Запустить через терминал

  • Открыть терминал
  • Ввести virtualbox

Vb start3.png

Vb finished4.png

Работа с Virtualbox

Установка дополнений

Образ дополнений

Чтобы скачать образ дополнений (VirtualBox Guest Additional) перейдите на сайт Oracle

https://www.oracle.com/virtualization/technologies/vm/downloads/virtualbox-downloads.html

и перейдите по ссылке VBox GuestAdditons.

Если у вас другая версия VirtualBox, подставьте ее в ссылку

https://download.virtualbox.org/virtualbox/7.0.22/VBoxGuestAdditions_7.0.22.iso

и перейдите по ней.

Дополнения и ALT Linux

Примечание: Действие выполняется в виртуальной машине VirtualBox с ALT Linux


Установка

В ALT Linux есть пакет kernel-modules-virtualbox-addition-*. Он доступен для ядер std-def и un-def.

Для его установки нужно сначала обновить ядро:

$ su -
# apt-get update
# apt-get dist-upgrade
# update-kernel -f

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

$ uname -r

Установите нужный модуль ядра:

# apt-get install kernel-modules-virtualbox-addition-std-def[1]

или

# apt-get install kernel-modules-virtualbox-addition-un-def[2]

Установите утилиты для работы с VirtualBox:

# apt-get install virtualbox-guest-additions virtualbox-guest-common virtualbox-guest-utils
Использование

Пакет virtualbox-guest-utils содержит базовые служебные программы для гостевых систем VirtualBox OSE.

Он позволяет:

  • осуществлять совместный доступ к файлам
  • синхронизировать время с главной системой
  • использовать общий буфер обмена
  • использовать drag-n-drop
  • использовать интеграцию мыши между окном машины и хостом
Общие папки

На хосте добавляем общую папку, указываем точку монтирования.

Vbox-share-settings.png

В виртуальной машине:

Включаем службу:

# systemctl enable --now vboxadd-service.service

Добавляем пользователя в группу

# usermod -aG vboxsf petr

Перезагружаемся.

Адаптация экрана

Так же после установки дополнений будет работать адаптация экрана под размер окна.

Vbox-alt-adaptscreen.png

Буфер обмена и Drag-n-drop

Чтобы включить буфер обмена, в окне запущенной виртуальной машины перейдите в меню Устройства ⇾ Общий буфер обмена ⇾ Двунаправленный.

Чтобы включить Drag-n-drop, в том же окне, перейдите в меню Устройства ⇾ Функция Drag-n-drop ⇾ Двунаправленный.

Дополнения и Windows

Примечание: Все функции, кроме drag-n-drop так же работают в ReactOS
Установка

Подключите скачанный ISO-образ и запустите программу установки под вашу архитектуру.

Перезагрузите виртуальную машину.

Использование

Установленные с ISO-образа дополнения позволяют:

  • осуществлять совместный доступ к файлам
  • синхронизировать время с главной системой
  • использовать общий буфер обмена
  • использовать drag-n-drop
  • использовать интеграцию мыши между окном машины и хостом
Общие папки

На хосте добавляем общую папку, указываем точку монтирования.

Vbox-share-settings.png

В виртуальной машине:

При включении общая папка будет отображаться в "Моем компьютере".

Адаптация экрана

Так же после установки дополнений будет работать адаптация экрана под размер окна.

Vbox-win-adaptscreen.png

Буфер обмена и Drag-n-drop

Чтобы включить буфер обмена, в окне запущенной виртуальной машины перейдите в меню Устройства ⇾ Общий буфер обмена ⇾ Двунаправленный.

Чтобы включить Drag-n-drop, в том же окне, перейдите в меню Устройства ⇾ Функция Drag-n-drop ⇾ Двунаправленный.

Настройка UEFI

Чтобы настроить UEFI (при включенной галочке Система-Включить EFI в настройках машины) нужно выполнить следующее:

1.Нажмите Esc в консоли UEFI-Shell, введите exit и нажмите Enter

Vbox-UEFI1.png

2.Вы попадете в настройки UEFI

Vbox-UEFI2.png

После установки ОС в данное меню можно попасть нажав Esc до начала загрузки системы.

Ссылки

Примечания

  1. Аналогично для ядер 6.6 и 6.12, только std-def/un-def заменить на 6.6 или 6.12
  2. Аналогично для ядер 6.6 и 6.12, только std-def/un-def заменить на 6.6 или 6.12