VirtualBox

Материал из ALT Linux Wiki

(Различия между версиями)
Перейти к: навигация, поиск
(статья бред и непонятно о чём)
 
(68 промежуточных версий не показаны.)
Строка 1: Строка 1:
-
{{stub}}
+
{{w|VirtualBox}}
-
{{Викифицировать}}
+
[http://virtualbox.org VirtualBox] — программный продукт виртуализации для операционных систем Microsoft Windows, DOS, GNU/Linux, Mac OS X и SUN Solaris/OpenSolaris. Программа была создана компанией Innotek с использованием исходного кода Qemu. Первая публично доступная версия VirtualBox появилась 15 января 2007 года. Существует две версии — свободная (OSE, англ. Open Source Edition), выпущенная под GNU GPL, и проприетарная (PUEL), различающиеся по функциональности; полнофункциональная проприетарная версия для личного использования распространяется бесплатно.
-
{{crap}}
+
В феврале 2008 Innotek был приобретён компанией Sun Microsystems, модель распространения VirtualBox при этом не изменилась.
-
Подскажите, где взять VirtualBox для ALTlinux.
+
-
На сайте производителя нет версси для этой системы.
+
-
А и не надо. Прекрасно работает VirtualBox_*_Linux_x86.run
+
Пакеты свободной версии VirtualBox есть в составе дистрибутивов ALT Linux, начиная с Desktop 4.1. При установке системы можно выбрать группу "Виртуализация" для установки Virtualbox по умолчанию.
-
== 1 ==
+
{{Attention|С версии VirtualBox 5.1.2 не используйте профили ALT Linux при создании виртуальных машин. Из списка их убрать сложно, поэтому просто не используйте. Импорт таких машин по-прежнему возможен.}}
-
Надо обязательно иметь в системе и в хост и в гостевой такие пакеты
+
 
-
(версии не важны, важно, чтобы они были '''одинаковы''' и для вашего
+
== Установка свободной версии VirtualBox из пакетов ==
-
рабочего ядра)
+
 
 +
;Чтобы воспользоваться Virtualbox, необходимо установить следующий набор пакетов:
 +
''(при помощи apt-get install без указания "-версия програмы", только по названию пакета)''
 +
 
 +
* virtualbox-версия программы
 +
* virtualbox-common-версия программы
 +
* virtualbox-doc-версия программы
 +
* kernel-modules-virtualbox-std-def-версия-программы-"номер_сборки_ядра" (нужен для хостовой ОС)
 +
* kernel-modules-virtualbox-addition-std-def-версия-программы-"номер_сборки_ядра"  (не нужен для хостовой ОС)
 +
* virtualbox-guest-additions-версия программы (не нужен для хостовой ОС)
 +
 
 +
;Пример:
 +
Пусть у вас стоит:
 +
* virtualbox-4.3.22-alt0.M70P.1
 +
и ядро
 +
* kernel-image-std-def-3.14.35-alt1
 +
 
 +
;Cмотрим модули virtualbox:
 +
 
 +
* kernel-modules-virtualbox-addition-std-def-4.3.22-alt1.200227.1 (можно удалить - вы не внутри Virtualbox)
 +
* kernel-modules-virtualbox-std-def-4.3.22-alt1.200227.1 (актуальное ядро, от актуальной версии VirtualBox)
 +
* kernel-modules-virtualbox-std-def-4.3.22-alt1.200225.1 (для старой версии ядра)
 +
* kernel-modules-virtualbox-std-def-4.3.14-alt1.200225.1 (от старого Virtualbox и старого ядра)
 +
* virtualbox-common-4.3.22-alt0.M70P.1 - Ок
 +
* virtualbox-doc-4.3.22-alt0.M70P.1 - Ок
 +
* virtualbox-guest-additions-4.3.22-alt0.M70P.1 - (не нужный пакет, если вы не внутри VirtualBox)/
 +
 
 +
При этом, они должны быть одной версии (4.3.22-alt0.M70P.1 в данном случае) а модули ядра, от текущего ядра.
 +
Кроме того, модуль ядра должен соответствовать сборочной ветки ядра (std-def в данном случае).
 +
Чтобы это обеспечить, ядро и пакеты необходимо устанавливать из одного и того же репозитория.
 +
 
 +
Если VirtualBox был недавно обновлён в репозитарии, а ядро Вы давно не обновляли, вероятно, что VB не будет работать с Вашим старым ядром. Вам придётся обновить ядро и/или модули. Это всё можно сделать утилитой {{prg|update-kernel}}.
 +
<code>
 +
update-kernel
 +
</code>
 +
{{note|подробнее смотри [[Обновление модулей ядра]]}}
 +
 
 +
;Узнать версию загруженного ядра можно так:
 +
<source lang=text>
 +
$ uname -r
 +
3.14.35-std-def-alt1
 +
</source>
 +
 
 +
;Если у вас в виртуальной машине (гостевая система) тоже ALTLinux, то можно установить в ней "дополнения гостевой системы":
 +
 
 +
kernel-modules-virtualbox-addition-std-def-версия программы-"номер_сборки_ядра"
 +
virtualbox-guest-additions-версия программы-"номер_сборки_ядра"
 +
 
 +
Virtualbox использует для работы устройство:
 +
 
 +
<code>
 +
$ ls -l /dev/vboxdrv
 +
crw-rw---- 1 root vboxusers 10, 58 Май  5 08:46 /dev/vboxdrv
 +
</code>
 +
 
 +
Если такого файла нет -- следует проверить наличие соответствующего загруженному ядру (тип и версия) пакета {{pkg|kernel-modules-virtualbox-*}} и
 +
<pre>
 +
chkconfig virtualbox on
 +
service virtualbox start
 +
</pre>
 +
;Проверяем список установленных пакетов:
 +
 
 +
<source lang=text>
 +
$ rpm -qa | grep virtual-*
 +
kernel-modules-virtualbox-addition-std-def-4.3.22-alt1.200227.1
 +
virtualbox-doc-4.3.22-alt0.M70P.1
 +
kernel-modules-virtualbox-4.3.22-alt1.200227.1 (не нужен в гостевой машине, можно удалить)
 +
virtualbox-4.3.22-alt0.M70P.1 - (можно смело удалять, если вы не хотитке устраивать "матрёшки").
 +
virtualbox-guest-additions-4.3.22-alt0.M70P.1
 +
virtualbox-common-4.3.22-alt0.M70P.1
 +
</source>
 +
 
 +
;Включаем своего пользователя в группу vboxusers или vboxadd (для коммерческой сборки)
 +
 
 +
<source lang=text>
 +
gpasswd -a user vboxusers
 +
</source>
 +
или
 +
<source lang=text>
 +
gpasswd -a user vboxadd
 +
</source>
 +
 
 +
;Для работы с usb устройствами необходимо настроить fstab:
 +
{{note|в p7 и старше не надо}}
 +
1. В конец /etc/fstab добавляем
 +
<code>
 +
  none /proc/bus/usb/ usbfs  devgid=500,devmode=666 0 0 где devgid=идентификатор пользователя
 +
</code>
 +
 
 +
2. Перезагружаем систему
 +
 
 +
;Для работы usb в режиме usb2 и usb3 надо скачать с сайта [https://www.virtualbox.org/wiki/Downloads Страница загрузки VirtualBox] и установить "Oracle VM VirtualBox Extension Pack", версия которого должна соответствовать версии Virtualbox. Также его можно скачать и установить, воспользовавшись пунктом меню "Файл->Проверить обновления..."
 +
 
 +
;После чего, можно запускать Virtualbox, например, в KDE из меню: K- Система — Виртуализатор Virtualbox.
 +
 
 +
== Настройка сети в гостевой системе Virtualbox ==
 +
 
 +
;Чтобы гостевая система получила доступ к подсети, в которой находится хост-система, можно поступить следующим образом:
 +
 
 +
Настроить в хост-системе туннель и бридж, как описано в пунктах [[Etcnet#Настройка tun/tap интерфейса|3.7]] и
 +
[[Etcnet#Как настроить Ethernet-мост|3.6]] статьи Etcnet — соответственно, сначала необходимо запустить интерфейс туннеля tap0 а затем объединить его в мост с интерфейсом вашей физической сетевой карты (например, eth0).
 +
После того, как вы убедитесь, что сеть на хост-системе после этой настройки работает как и раньше, вы можете использовать туннель в Virtualbox:
 +
зайдите в свойства виртуальной машины, раздел "сеть" и выберите "Подсоединён к" — "Хост-интерфейс", а ниже, в поле "Хост-интерфейсы" выберите tap0.
 +
После этого, при загрузке, гостевая система получит доступ к той же подсети, что и хост-система, и будет выступать равноправным компьютером в сети со своим IP адресом. IP адрес и другие настройки интерфейсу следует назначать средствами гостевой системы.
 +
<br/><br/>
 +
 
 +
== Настройка загрузки Linux в гостевых машинах в режиме UEFI ==
 +
Основная статья  [[UEFI]]
 +
 
 +
Следует отметить, что NVRAM на виртуальном железе VirtualBox не переживает выключение экземпляра (это известная проблема). Т.е. установщик/efibootmgr не может добавить ссылку на grub, а если добавить её руками, она исчезнет при следующем запуске экземпляра.
 +
 
 +
Решение:
 +
 
 +
'''1-ый вариант''' выполнить в ещё загруженной системе
 +
 
 +
echo "fs0:\EFI\altlinux\grubx64.efi" > /boot/efi/startup.nsh
 +
 
 +
Или то же самое сделать потом, из EFI Shell:
 +
 
 +
echo "fs0:\EFI\altlinux\grubx64.efi" > fs0:\startup.nsh
 +
 
 +
'''2-ой вариант''' (подсмотрено в | VirtualBox (Русский) на wiki.archlinux.org
 +
 
 +
после установки системы:
 +
 
 +
* Если существует файл /boot/efi/boot/BOOTX64.EFI дать ему другое имя
 +
* Скопировать /EFI/altlinux/grubx64.efi в /boot/efi/boot/BOOTX64.EFI
 +
 
 +
== Решение проблем ==
 +
 
 +
;При запуске дистрибутивов на Седьмой платформе как гостевых ОС в VirtualBox после загрузки ядра показывается чёрный экран, в журнале пишется <pre>Guest Log: BIOS: KBD: unsupported int 16h function 03</pre>
 +
:Для современных ядер, на которых основаны дистрибутивы Седьмой платформы, нужно указывать в настройках виртуальной машины Система {{==)}} Материнская плата {{==)}} Чипсет: '''ICH9''' (заодно там же включите '''IO APIC'''). По умолчанию в альтовом VirtualBox стоит PIIX3, что и является причиной указанного поведения.
 +
 
 +
;При запуске гостевой ОС на Седьмой платформе VirtualBox показывает сообщение о не достаточных правах доступа для /dev/vboxdrv и просит запустить "/etc/init.d/vboxdrv setup" которого нет
 +
* Необходимо выполнить:
 +
<code>
 +
chkconfig virtualbox on
 +
service virtualbox start
 +
</code>
 +
 
 +
;В гостевой ОС после выбора подсказки Установка или LiveCD чёрный экран и ничего не происходит.
 +
* Выбирите PIIX3, и при запуске установки  (или загрузки с LiveCD) выберите клавишеей F5 загрузка "Без локального APIC"
 +
[[Файл:VirtualBox1.jpg|миниатюра]]
 +
 
 +
;В гостевой системе не работает звук
 +
:Откройте регулятор громкости PulseAudio ({{prg|pavucontrol}}) и на вкладке «Проигрывание» включите звук для виртуальной машины.
 +
{{note|VirtualBox через PulseAudio позволяет настраивать вывод звука для каждой виртуальной машины. При этом включение для первой машины включает звук и для других запускаемых виртуальных машин}}
 +
 
 +
;Плохо работает микрофон в гостевой системе (заикается)
 +
:Всё дело в PulseAudio. Для того, чтобы микрофон работал без заиканий, для виртуальной машины выставьте ALSA: Аудио {{==)}} Аудиодрайвер: ALSA и выключите на время работы PulseAudio: в терминале <pre>pulseaudio -k</pre>
 +
 
 +
;Если служба {{cmd|virtualbox}} запускается, но модули не загружаются, отключите автозапуск службы {{cmd|virtualbox}} и создайте файл {{path|/etc/modules-load.d/virtualbox.conf}} такого содержания:
 +
vboxdrv
 +
vboxpci
 +
vboxnetflt
 +
vboxnetadp
 +
 
 +
;Происходит зависание гостевой ОС на словах <tt>Local IPI:</tt>
 +
:Это {{altbug|29344}}, исправлено в {{pkg|virtualbox-4.2.16-alt2}} (но вовсе не факт, что в других дистрибутивах порядок).
 +
 
 +
== Установка Oracle Extension Pack ==
 +
 
 +
;Установленная версия VirtualBox OSE позволяет использовать только USB 1.0, однако иногда необходимо использовать USB 2.0. Для корректной работы USB 2.0 в VirtualBox (на момент написания актуальной версией в репозитарии Sisyphus является VirtualBox 4.0.12) требуется Oracle VM VirtualBox Extension Pack. Его можно скачать с сайта Oracle [http://www.oracle.com/technetwork/server-storage/virtualbox/downloads/index.html#extpack]. Установку дополнения можно запустить из графического интерфейса или из командной строки:
 +
 
 +
# VirtualBox extpack install /path/to/Oracle_VM_VirtualBox_Extension_Pack-...vbox-extpack
 +
 
 +
Для установки дополнения необходимо запустить VirtualBox с правами администратора, иначе установка не удастся с ошибкой:
 +
 
 +
The installer failed with exit code 127: Error creating textual authentication agent:
 +
Error opening current controlling terminal for the process (`/dev/tty'): No such device or address.
 +
 
 +
{{note|новые версии Virtualbox умеют устанавливать это расширение от обычного пользователя}}
 +
 
 +
Если в системе установлена программа gksu или kdesudo, то VirtualBox попытается с их помощью поднять уровень привилегий для выполнения установки
 +
 
 +
На данный момент Oracle VM VirtualBox Extension Pack является единственным дополнением. Оно обеспечивает следующую функциональность:
 +
 
 +
* USB 2.0 EHCI
 +
* VirtualBox Remote Desktop Protocol, VRDP
 +
* Intel PXE boot ROM с поддержкой контроллера E1000
 +
* экспериментальная поддержка «проброса» PCI с хост-системы
 +
 
 +
{{Важно|Если установлен и используется плагин  Oracle Extension Pack , то обязательно обновить его до последней версии (скачать с virtualbox.org), иначе виртуальная машина начинает грузится и «схлопывается».[http://lists.altlinux.org/pipermail/community/2015-February/683600.html]}}
 +
 
 +
== Установка проприетарной сборки VirtualBox ==
 +
 
 +
Также можно использовать закрытую бинарную сборку с сайта разработчиков программы.
 +
{{note|посмотрите обсуждение этой статьи, почему не надо так делать}}
 +
 
 +
=== Что потребуется для установки? ===
 +
* Во-первых, очевидно, потребуется файл с инсталлятором VirtualBox с официального сайта. На данный момент страница со ссылками на нужный файл находится по адресу: [http://www.virtualbox.org/wiki/Linux_Downloads www.virtualbox.org/wiki/Linux_Downloads]. Дистрибутивы {{path|All distributions i386}} или {{path|All distributions AMD64}} для 32-х или 64-х битной системы, соответственно.
 +
 
 +
* Во-вторых, вам потребуется компилятор. Например, на момент написания этой статьи, нужен пакет {{pkg|gcc4.1}}, а также программа {{prg|make}}. Кроме того, вам потребуется пакет {{pkg|kernel-headers-modules}} для ''вашего'' ядра.
 +
 
 +
=== Об установке заголовков для сборки модулей ядра ===
 +
;Для сборки модулей ядра, которые нужны для VirtualBox (или VM Ware), в системе должен быть установлен пакет {{pkg|kernel-headers-modules}} той же версии, что и используемое ядро.
 +
 
 +
Посмотрите, какая версия ядра установлена у вас в системе. Например:
 +
<source lang=text>
 +
[alexei@threebears ~]$ uname -r
 +
2.6.27-std-ll-alt7
 +
</source>
 +
Как видно, в системе установлено ядро '''2.6.27-std-ll-alt7'''. То есть, для сборки модулей под него нужно установить пакет {{pkg|kernle-headers-modules-std-ll}} версии '''2.6.27-alt7'''.
 +
 
 +
;Проверить, установлен ли у вас такой пакет, можно так:
 +
 
 +
<source lang=text>
 +
[alexei@threebears ~]$ rpm -qa | grep headers-modules
 +
kernel-headers-modules-std-ll-2.6.27-alt7
 +
kernel-headers-modules-std-def-2.6.27-alt7
 +
</source>
 +
Как видно, в данной системе он установлен.
 +
 
 +
;Если в вашей системе этого пакета нет, установите его командой:
 +
 
 +
<source lang=text>
 +
apt-get install kernel-headers-modules-std-ll
 +
</source>
 +
 
 +
{{note|Советую запретить apt-у автоматом обновлять пакеты kernel-headers-* ("захолдить") эти пакеты}}
 +
 
 +
=== К вопросу о несогласованности версий ===
 +
;Если вы ставите пакеты с диска с дистрибутивом, то версии ядер и заголовков совпадают (если только в дистрибутив не вкралась досадная ошибка). Однако, если вы делали точечные обновления системы, или обновляетесь с нестабильных репозиториев, то версии ядра и заголовков могут не совпадать.
 +
 
 +
;Проверьте версии. Если они не совпадают, то обновите свою систему, обновите индексы apt (через apt-get update или "получить сведения" в Синаптике) или установите то ядро, для которого есть заголовки.
 +
 
 +
=== Установка ===
 +
 
 +
Общий план действий:
 +
* скачайте дистрибутив в любое удобное место, например в /tmp
 +
* сделайте файл исполняемым
 +
* переключитесь в рута, и выполните файл
 +
** в процессе установки выберите какой-либо каталог, отличный от /usr, например /opt
 +
* запускайте VirtualBox от пользователя и работайте
 +
 
 +
Вот пример:
 +
<source lang=text>
 +
[alexei@threebears ~]$ cd /tmp
 +
[alexei@threebears tmp]$ wget http://download.virtualbox.org/virtualbox/2.1.0/VirtualBox-2.1.0-41146-Linux_x86.run
 +
.......<skip>.........
 +
100%[======================================>] 41 050 695  1,54M/s  в 23s     
 +
2008-12-27 16:15:16 (1,71 MB/s) - `VirtualBox-2.1.0-41146-Linux_x86.run?e=1230383984&h=ff5f79c0533f3b71dd384e4c47e696c9' сохранён [41050695/41050695]
 +
[alexei@threebears tmp]$ mv ./VirtualBox-2.1.0-41146-Linux_x86.run\?e\=1230383984\&h\=ff5f79c0533f3b71dd384e4c47e696c9 ./VirtualBox-2.1.0-41146-Linux_x86.run 
 +
[alexei@threebears tmp]$ chmod a+x ./VirtualBox-2.1.0-41146-Linux_x86.run
 +
[alexei@threebears tmp]$ ll ./VirtualBox-2.1.0-41146-Linux_x86.run
 +
-rwxr-xr-x 1 alexei user 41050695 Дек 27 16:17 ./VirtualBox-2.1.0-41146-Linux_x86.run
 +
[alexei@threebears tmp]$ su -
 +
Password:
 +
[root@threebears ~]# cd /tmp/
 +
[root@threebears tmp]# ./VirtualBox-2.1.0-41146-Linux_x86.run
 +
Verifying archive integrity... All good.
 +
Uncompressing VirtualBox for Linux installation.........
 +
VirtualBox Version 2.1.0 (2008-12-17T10:57:49Z) installer
 +
Removing previous installation of VirtualBox 2.1.0 from /opt/VirtualBox-2.1.0
 +
Installing VirtualBox to /opt/VirtualBox-2.1.0
 +
Building the VirtualBox kernel module
 +
Building the VirtualBox netflt kernel module
 +
VirtualBox has been installed successfully.
 +
You will find useful information about using VirtualBox in the user manual
 +
  /opt/VirtualBox-2.1.0/UserManual.pdf
 +
and in the user FAQ
 +
  http://www.virtualbox.org/wiki/User_FAQ
 +
We hope that you enjoy using VirtualBox.
 +
</source>
 +
 
 +
Всё, программа установлена. Теперь от пользователя можно вызывать команду VirtualBox.
 +
 
 +
Второй вариант установки — с бывшей страницы Virtualbox, созданной пользователем Becase:
 +
 
 +
Прекрасно работает VirtualBox_*_Linux_x86.run
 +
 
 +
;Необходимо обязательно иметь и в хост и в гостевой системе такие пакеты (версии не важны, важно, чтобы они были '''одинаковы''' и для вашего рабочего ядра):
* kernel-headers-common
* kernel-headers-common
* kernel-headers-std-smp
* kernel-headers-std-smp
* kernel-headers-modules-std-smp
* kernel-headers-modules-std-smp
-
Установка аддона — отдельная песня, но весьма не сложная
+
 
-
== 2 ==
+
;Установка аддона — отдельная песня, но весьма несложная.
-
Надо аддон рутом распаковать, например, так:
+
 
 +
;Аддон необходимо распаковать рутом, например, так:
<code>
<code>
  ./VBoxLinuxAdditions.run --noexec --keep --target /root/VBoxInstall
  ./VBoxLinuxAdditions.run --noexec --keep --target /root/VBoxInstall
</code>
</code>
-
== 3 ==
+
 
-
Влезть в install.sh и добавить в
+
В install.sh необходимо добавить в проверку версии xorg.
-
проверку версии xorg
+
Найдите строчки
Найдите строчки
<code>
<code>
Строка 31: Строка 300:
  $modules_dir/input/vboxmouse_drv.so
  $modules_dir/input/vboxmouse_drv.so
</code>
</code>
-
И замените первую на:
+
И замените первую на
<code>
<code>
  7.1.* | 7.2.* | 7.3.* )
  7.1.* | 7.2.* | 7.3.* )
Строка 39: Строка 308:
  $modules_dir/input/vboxmouse_drv.so
  $modules_dir/input/vboxmouse_drv.so
</code>
</code>
-
А еще, чуть выше в строку
+
А ещё, чуть выше, в строку
<code>
<code>
  for dir in /usr/lib/xorg/modules /usr/X11R6/lib/modules; do
  for dir in /usr/lib/xorg/modules /usr/X11R6/lib/modules; do
Строка 48: Строка 317:
</code>
</code>
-
После чего можно просто запускать install.sh (от рута) и перегружать
+
После чего, можно просто запускать install.sh (от рута) и перегружать гостевую ОС… всё работает :)
-
гостевую ОС … все работает :)
+
 
 +
=== Что делать после обновления ядра, если у вас установлена закрытая версия версия VirtualBox ===
 +
Если вы установили VirtualBox, а затем обновили ядро, то при следующем запуске VirtualBox вы получите такое сообщение:
 +
 
 +
<code>
 +
[alexei@threebears ~]$ VirtualBox
 +
WARNING: The vboxdrv kernel module is not loaded. Either there is no module
 +
          available for the current kernel (2.6.27-std-ll-alt7) or it failed to
 +
          load. Please recompile the kernel module and install it by
 +
            sudo /etc/init.d/vboxdrv setup
 +
          You will not be able to start VMs until this problem is fixed.
 +
</code>
 +
 
 +
Это означает, что для нового ядра не собран нужный модуль, и программа подсказывает вам, как поступить:
 +
<code>
 +
[alexei@threebears ~]$ su -
 +
Password:
 +
[root@threebears ~]# service vboxdrv setup
 +
Stopping VirtualBox kernel module                                      [ DONE ]
 +
Removing old VirtualBox netflt kernel module                            [ DONE ]
 +
Removing old VirtualBox kernel module                                  [ DONE ]
 +
Recompiling VirtualBox kernel module                                    [ DONE ]
 +
Starting VirtualBox kernel module                                      [ DONE ]
 +
</code>
 +
 
 +
== Установка «Дополнений гостевой ОС» для гостевого ALT Linux ==
 +
 
 +
;1. Установите модуль ядра {{pkg|kernel-modules-virtualbox-addition-<тип ядра>}} и вспомогательные пакеты для интеграции:
 +
<source lang="Bash">apt-get install kernel-modules-virtualbox-addition-$(uname -r|cut -f2,3 -d-) virtualbox-guest-additions xorg-drv-vboxvideo</source>
 +
 
 +
 
 +
{{Важно|Перед любыми операщиями с установкой модуля ядра, надо обновить ядро с помощью команд: <source lang="Bash">
 +
apt-get update
 +
update-kernel
 +
</source>
 +
И ни в коем случае не устанавливать модуль от другой ядерной сборки подробнее смотри: [[Обновление_ядра]]}}
 +
<!---
 +
{{Note|Если модуль ядра из репозитория слишком новый и потянул новое ядро, рекомендуется обновить ядро целиком со всеми модулями командой  <source lang="Bash">update-kernel</source>}}
 +
--->
 +
;2. Выберите в Центре управления системой {{==)}} Дисплей драйвер {{cmd|vboxvideo}}.
 +
{{Note|Драйвер можно выбрать и в командной строке (под правами root): <source lang="Bash">alterator-cmdline /x11 action write _objects driver driver vboxvideo</source>}}
 +
 
 +
{{Note|Если пункта «Дисплей» нет в Центре управления системой, установите пакет {{pkg|alterator-x11}}}}
 +
;3. Перезагрузите гостевую систему или только сеанс
 +
 
 +
;4. Включите в меню виртуальной машины:
 +
* Устройства {{==)}} Общий буфер обмена {{==)}} Двунаправленный
 +
* Устройства {{==)}} Drag'n'Drop {{==)}} Двунаправленный.
 +
 
 +
=== Общие папки ===
 +
 
 +
;1. Установите в гостевой операционной системе дополнения гостевой операционной системы и {{pkg|virtualbox-guest-utils}}:
 +
<code>
 +
apt-get install kernel-modules-virtualbox-addition-$(uname -r | cut -d "-" -f2,3) virtualbox-guest-utils
 +
</code>
 +
 
 +
Этот пункт не нужен, если уже установлен пакет {{pkg|virtualbox-guest-additions}}, как описано выше.
 +
 
 +
;2. Добавьте в свойствах виртуальной машины (раздел «Общие папки») папку. Для этого выберите путь и укажите имя папки (по умолчанию используется имя последней папки в указанном пути). Если хотите чтобы папка осталась настроенной и после перезагрузки гостевой операционной системы, установите флажок «Создать постоянную папку».
 +
 
 +
;3. Для монтирования общих папок VirtualBox должен быть загружен модуль '''vboxsf''':
 +
<source lang="Bash">modprobe vboxsf</source>
 +
 
 +
;4. В гостевой операционной системе выполните
 +
<source lang="Bash">mount -t vboxsf <имя папки> /mnt</source>
 +
 
 +
{{Attention|Использование параметра -t в команде {{cmd|mount}} разрешено только [[Su|пользователю root]].}}
 +
 
 +
;5. Общая папка становится доступна в /mnt.
 +
 
 +
=== Краткая инструкция для установки дополнений вручную ===
 +
{{Attention|идеологически неправильное решение!!!'''<ref>Идеологически правильно дождаться, пока мейнтейнер соберёт новую версию драйверов в дистрибутив.</ref>}}
 +
* Запускаем гостевой Линукс, и удаляем пакеты:
 +
xorg-drv-vboxvideo
 +
* Ставим пакет '''kernel-headers-modules''' для ''своего'' ядра.
 +
* В окне VirtualBox, в меню "Устройства", выбираем "Установить дополнения гостевой ОС".
 +
* В гостевом Линуксе заходим на CD-ROM, находим там файл '''VBoxLinuxAdditions-x86.run''' (-amd64.run для соответствующей архитектуры), копируем его в /tmp.
 +
* В гостевом Линуксе открываем терминал, переходим в нём в рута (командой su -) и выполняем команду:
 +
chmod a+x /tmp/VBoxLinuxAdditions-x86.run
 +
/tmp/VBoxLinuxAdditions-x86.run
 +
* Далее исполняется скрипт, который сам все распакует, скомпилирует и установит.
 +
* Убеждаемся, что в гостевом Линуксе '''xorg.conf''' прописаны драйвер '''vboxvideo''' для видео.
 +
* Перезагружаем виртуальную машину.
 +
* Наслаждаемся автоизменением размеров окна, и "незалипающей" мышкой.
 +
 
 +
== Примечания ==
 +
<references />
 +
 
 +
{{Category navigation|title=Виртуализация|category=Виртуализация|sortkey={{SUBPAGENAME}}}}
 +
{{Category navigation|title=ПО уровня предприятия|category=Enterprise Software|sortkey={{SUBPAGENAME}}}}

Текущая версия на 01:59, 12 февраля 2017

Логотип Википедии
В Википедии есть обзорная статья по теме «VirtualBox».

VirtualBox — программный продукт виртуализации для операционных систем Microsoft Windows, DOS, GNU/Linux, Mac OS X и SUN Solaris/OpenSolaris. Программа была создана компанией Innotek с использованием исходного кода Qemu. Первая публично доступная версия VirtualBox появилась 15 января 2007 года. Существует две версии — свободная (OSE, англ. Open Source Edition), выпущенная под GNU GPL, и проприетарная (PUEL), различающиеся по функциональности; полнофункциональная проприетарная версия для личного использования распространяется бесплатно. В феврале 2008 Innotek был приобретён компанией Sun Microsystems, модель распространения VirtualBox при этом не изменилась.

Пакеты свободной версии VirtualBox есть в составе дистрибутивов ALT Linux, начиная с Desktop 4.1. При установке системы можно выбрать группу "Виртуализация" для установки Virtualbox по умолчанию.

Внимание! С версии VirtualBox 5.1.2 не используйте профили ALT Linux при создании виртуальных машин. Из списка их убрать сложно, поэтому просто не используйте. Импорт таких машин по-прежнему возможен.


Содержание

Установка свободной версии VirtualBox из пакетов

Чтобы воспользоваться Virtualbox, необходимо установить следующий набор пакетов

(при помощи apt-get install без указания "-версия програмы", только по названию пакета)

  • virtualbox-версия программы
  • virtualbox-common-версия программы
  • virtualbox-doc-версия программы
  • kernel-modules-virtualbox-std-def-версия-программы-"номер_сборки_ядра" (нужен для хостовой ОС)
  • kernel-modules-virtualbox-addition-std-def-версия-программы-"номер_сборки_ядра" (не нужен для хостовой ОС)
  • virtualbox-guest-additions-версия программы (не нужен для хостовой ОС)
Пример

Пусть у вас стоит:

  • virtualbox-4.3.22-alt0.M70P.1

и ядро

  • kernel-image-std-def-3.14.35-alt1
Cмотрим модули virtualbox
  • kernel-modules-virtualbox-addition-std-def-4.3.22-alt1.200227.1 (можно удалить - вы не внутри Virtualbox)
  • kernel-modules-virtualbox-std-def-4.3.22-alt1.200227.1 (актуальное ядро, от актуальной версии VirtualBox)
  • kernel-modules-virtualbox-std-def-4.3.22-alt1.200225.1 (для старой версии ядра)
  • kernel-modules-virtualbox-std-def-4.3.14-alt1.200225.1 (от старого Virtualbox и старого ядра)
  • virtualbox-common-4.3.22-alt0.M70P.1 - Ок
  • virtualbox-doc-4.3.22-alt0.M70P.1 - Ок
  • virtualbox-guest-additions-4.3.22-alt0.M70P.1 - (не нужный пакет, если вы не внутри VirtualBox)/

При этом, они должны быть одной версии (4.3.22-alt0.M70P.1 в данном случае) а модули ядра, от текущего ядра. Кроме того, модуль ядра должен соответствовать сборочной ветки ядра (std-def в данном случае). Чтобы это обеспечить, ядро и пакеты необходимо устанавливать из одного и того же репозитория.

Если VirtualBox был недавно обновлён в репозитарии, а ядро Вы давно не обновляли, вероятно, что VB не будет работать с Вашим старым ядром. Вам придётся обновить ядро и/или модули. Это всё можно сделать утилитой update-kernel.

update-kernel

Примечание: подробнее смотри Обновление модулей ядра


Узнать версию загруженного ядра можно так
 $ uname -r 
 3.14.35-std-def-alt1
Если у вас в виртуальной машине (гостевая система) тоже ALTLinux, то можно установить в ней "дополнения гостевой системы"
kernel-modules-virtualbox-addition-std-def-версия программы-"номер_сборки_ядра" 
virtualbox-guest-additions-версия программы-"номер_сборки_ядра" 

Virtualbox использует для работы устройство:

$ ls -l /dev/vboxdrv
crw-rw---- 1 root vboxusers 10, 58 Май  5 08:46 /dev/vboxdrv

Если такого файла нет -- следует проверить наличие соответствующего загруженному ядру (тип и версия) пакета kernel-modules-virtualbox-* и

chkconfig virtualbox on
service virtualbox start
Проверяем список установленных пакетов
 $ rpm -qa | grep virtual-*
 kernel-modules-virtualbox-addition-std-def-4.3.22-alt1.200227.1
 virtualbox-doc-4.3.22-alt0.M70P.1
 kernel-modules-virtualbox-4.3.22-alt1.200227.1 (не нужен в гостевой машине, можно удалить)
 virtualbox-4.3.22-alt0.M70P.1 - (можно смело удалять, если вы не хотитке устраивать "матрёшки").
 virtualbox-guest-additions-4.3.22-alt0.M70P.1
 virtualbox-common-4.3.22-alt0.M70P.1
Включаем своего пользователя в группу vboxusers или vboxadd (для коммерческой сборки)
 gpasswd -a user vboxusers

или

 gpasswd -a user vboxadd
Для работы с usb устройствами необходимо настроить fstab
Примечание: в p7 и старше не надо

1. В конец /etc/fstab добавляем

  none /proc/bus/usb/ usbfs  devgid=500,devmode=666 0 0 где devgid=идентификатор пользователя

2. Перезагружаем систему

Для работы usb в режиме usb2 и usb3 надо скачать с сайта Страница загрузки VirtualBox и установить "Oracle VM VirtualBox Extension Pack", версия которого должна соответствовать версии Virtualbox. Также его можно скачать и установить, воспользовавшись пунктом меню "Файл->Проверить обновления..."
После чего, можно запускать Virtualbox, например, в KDE из меню
K- Система — Виртуализатор Virtualbox.

Настройка сети в гостевой системе Virtualbox

Чтобы гостевая система получила доступ к подсети, в которой находится хост-система, можно поступить следующим образом

Настроить в хост-системе туннель и бридж, как описано в пунктах 3.7 и 3.6 статьи Etcnet — соответственно, сначала необходимо запустить интерфейс туннеля tap0 а затем объединить его в мост с интерфейсом вашей физической сетевой карты (например, eth0). После того, как вы убедитесь, что сеть на хост-системе после этой настройки работает как и раньше, вы можете использовать туннель в Virtualbox: зайдите в свойства виртуальной машины, раздел "сеть" и выберите "Подсоединён к" — "Хост-интерфейс", а ниже, в поле "Хост-интерфейсы" выберите tap0. После этого, при загрузке, гостевая система получит доступ к той же подсети, что и хост-система, и будет выступать равноправным компьютером в сети со своим IP адресом. IP адрес и другие настройки интерфейсу следует назначать средствами гостевой системы.

Настройка загрузки Linux в гостевых машинах в режиме UEFI

Основная статья UEFI

Следует отметить, что NVRAM на виртуальном железе VirtualBox не переживает выключение экземпляра (это известная проблема). Т.е. установщик/efibootmgr не может добавить ссылку на grub, а если добавить её руками, она исчезнет при следующем запуске экземпляра.

Решение:

1-ый вариант выполнить в ещё загруженной системе

echo "fs0:\EFI\altlinux\grubx64.efi" > /boot/efi/startup.nsh

Или то же самое сделать потом, из EFI Shell:

echo "fs0:\EFI\altlinux\grubx64.efi" > fs0:\startup.nsh

2-ой вариант (подсмотрено в | VirtualBox (Русский) на wiki.archlinux.org

после установки системы:

  • Если существует файл /boot/efi/boot/BOOTX64.EFI дать ему другое имя
  • Скопировать /EFI/altlinux/grubx64.efi в /boot/efi/boot/BOOTX64.EFI

Решение проблем

При запуске дистрибутивов на Седьмой платформе как гостевых ОС в VirtualBox после загрузки ядра показывается чёрный экран, в журнале пишется
Guest Log: BIOS: KBD: unsupported int 16h function 03
Для современных ядер, на которых основаны дистрибутивы Седьмой платформы, нужно указывать в настройках виртуальной машины Система  ⇒ Материнская плата  ⇒ Чипсет: ICH9 (заодно там же включите IO APIC). По умолчанию в альтовом VirtualBox стоит PIIX3, что и является причиной указанного поведения.
При запуске гостевой ОС на Седьмой платформе VirtualBox показывает сообщение о не достаточных правах доступа для /dev/vboxdrv и просит запустить "/etc/init.d/vboxdrv setup" которого нет
  • Необходимо выполнить:

chkconfig virtualbox on
service virtualbox start

В гостевой ОС после выбора подсказки Установка или LiveCD чёрный экран и ничего не происходит.
  • Выбирите PIIX3, и при запуске установки (или загрузки с LiveCD) выберите клавишеей F5 загрузка "Без локального APIC"
VirtualBox1.jpg
В гостевой системе не работает звук
Откройте регулятор громкости PulseAudio (pavucontrol) и на вкладке «Проигрывание» включите звук для виртуальной машины.
Примечание: VirtualBox через PulseAudio позволяет настраивать вывод звука для каждой виртуальной машины. При этом включение для первой машины включает звук и для других запускаемых виртуальных машин


Плохо работает микрофон в гостевой системе (заикается)
Всё дело в PulseAudio. Для того, чтобы микрофон работал без заиканий, для виртуальной машины выставьте ALSA: Аудио  ⇒ Аудиодрайвер: ALSA и выключите на время работы PulseAudio: в терминале
pulseaudio -k
Если служба virtualbox запускается, но модули не загружаются, отключите автозапуск службы virtualbox и создайте файл /etc/modules-load.d/virtualbox.conf такого содержания
vboxdrv
vboxpci
vboxnetflt
vboxnetadp
Происходит зависание гостевой ОС на словах Local IPI:
Это altbug #29344, исправлено в virtualbox-4.2.16-alt2 (но вовсе не факт, что в других дистрибутивах порядок).

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

Установленная версия VirtualBox OSE позволяет использовать только USB 1.0, однако иногда необходимо использовать USB 2.0. Для корректной работы USB 2.0 в VirtualBox (на момент написания актуальной версией в репозитарии Sisyphus является VirtualBox 4.0.12) требуется Oracle VM VirtualBox Extension Pack. Его можно скачать с сайта Oracle [1]. Установку дополнения можно запустить из графического интерфейса или из командной строки
# VirtualBox extpack install /path/to/Oracle_VM_VirtualBox_Extension_Pack-...vbox-extpack

Для установки дополнения необходимо запустить VirtualBox с правами администратора, иначе установка не удастся с ошибкой:

The installer failed with exit code 127: Error creating textual authentication agent:
Error opening current controlling terminal for the process (`/dev/tty'): No such device or address.
Примечание: новые версии Virtualbox умеют устанавливать это расширение от обычного пользователя


Если в системе установлена программа gksu или kdesudo, то VirtualBox попытается с их помощью поднять уровень привилегий для выполнения установки

На данный момент Oracle VM VirtualBox Extension Pack является единственным дополнением. Оно обеспечивает следующую функциональность:

  • USB 2.0 EHCI
  • VirtualBox Remote Desktop Protocol, VRDP
  • Intel PXE boot ROM с поддержкой контроллера E1000
  • экспериментальная поддержка «проброса» PCI с хост-системы
Если установлен и используется плагин Oracle Extension Pack , то обязательно обновить его до последней версии (скачать с virtualbox.org), иначе виртуальная машина начинает грузится и «схлопывается».[2]


Установка проприетарной сборки VirtualBox

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

Примечание: посмотрите обсуждение этой статьи, почему не надо так делать


Что потребуется для установки?

  • Во-первых, очевидно, потребуется файл с инсталлятором VirtualBox с официального сайта. На данный момент страница со ссылками на нужный файл находится по адресу: www.virtualbox.org/wiki/Linux_Downloads. Дистрибутивы All distributions i386 или All distributions AMD64 для 32-х или 64-х битной системы, соответственно.
  • Во-вторых, вам потребуется компилятор. Например, на момент написания этой статьи, нужен пакет gcc4.1, а также программа make. Кроме того, вам потребуется пакет kernel-headers-modules для вашего ядра.

Об установке заголовков для сборки модулей ядра

Для сборки модулей ядра, которые нужны для VirtualBox (или VM Ware), в системе должен быть установлен пакет kernel-headers-modules той же версии, что и используемое ядро.

Посмотрите, какая версия ядра установлена у вас в системе. Например:

 [alexei@threebears ~]$ uname -r
 2.6.27-std-ll-alt7

Как видно, в системе установлено ядро 2.6.27-std-ll-alt7. То есть, для сборки модулей под него нужно установить пакет kernle-headers-modules-std-ll версии 2.6.27-alt7.

Проверить, установлен ли у вас такой пакет, можно так
 [alexei@threebears ~]$ rpm -qa | grep headers-modules
 kernel-headers-modules-std-ll-2.6.27-alt7
 kernel-headers-modules-std-def-2.6.27-alt7

Как видно, в данной системе он установлен.

Если в вашей системе этого пакета нет, установите его командой
 apt-get install kernel-headers-modules-std-ll
Примечание: Советую запретить apt-у автоматом обновлять пакеты kernel-headers-* ("захолдить") эти пакеты


К вопросу о несогласованности версий

Если вы ставите пакеты с диска с дистрибутивом, то версии ядер и заголовков совпадают (если только в дистрибутив не вкралась досадная ошибка). Однако, если вы делали точечные обновления системы, или обновляетесь с нестабильных репозиториев, то версии ядра и заголовков могут не совпадать.
Проверьте версии. Если они не совпадают, то обновите свою систему, обновите индексы apt (через apt-get update или "получить сведения" в Синаптике) или установите то ядро, для которого есть заголовки.

Установка

Общий план действий:

  • скачайте дистрибутив в любое удобное место, например в /tmp
  • сделайте файл исполняемым
  • переключитесь в рута, и выполните файл
    • в процессе установки выберите какой-либо каталог, отличный от /usr, например /opt
  • запускайте VirtualBox от пользователя и работайте

Вот пример:

 [alexei@threebears ~]$ cd /tmp
 [alexei@threebears tmp]$ wget http://download.virtualbox.org/virtualbox/2.1.0/VirtualBox-2.1.0-41146-Linux_x86.run
 .......<skip>.........
 100%[======================================>] 41 050 695  1,54M/s   в 23s      
 2008-12-27 16:15:16 (1,71 MB/s) - `VirtualBox-2.1.0-41146-Linux_x86.run?e=1230383984&h=ff5f79c0533f3b71dd384e4c47e696c9' сохранён [41050695/41050695]
 [alexei@threebears tmp]$ mv ./VirtualBox-2.1.0-41146-Linux_x86.run\?e\=1230383984\&h\=ff5f79c0533f3b71dd384e4c47e696c9 ./VirtualBox-2.1.0-41146-Linux_x86.run   
 [alexei@threebears tmp]$ chmod a+x ./VirtualBox-2.1.0-41146-Linux_x86.run 
 [alexei@threebears tmp]$ ll ./VirtualBox-2.1.0-41146-Linux_x86.run 
 -rwxr-xr-x 1 alexei user 41050695 Дек 27 16:17 ./VirtualBox-2.1.0-41146-Linux_x86.run
 [alexei@threebears tmp]$ su -
 Password: 
 [root@threebears ~]# cd /tmp/
 [root@threebears tmp]# ./VirtualBox-2.1.0-41146-Linux_x86.run 
 Verifying archive integrity... All good.
 Uncompressing VirtualBox for Linux installation.........
 VirtualBox Version 2.1.0 (2008-12-17T10:57:49Z) installer
 Removing previous installation of VirtualBox 2.1.0 from /opt/VirtualBox-2.1.0
 Installing VirtualBox to /opt/VirtualBox-2.1.0
 Building the VirtualBox kernel module
 Building the VirtualBox netflt kernel module
 VirtualBox has been installed successfully.
 You will find useful information about using VirtualBox in the user manual
   /opt/VirtualBox-2.1.0/UserManual.pdf
 and in the user FAQ
   http://www.virtualbox.org/wiki/User_FAQ
 We hope that you enjoy using VirtualBox.

Всё, программа установлена. Теперь от пользователя можно вызывать команду VirtualBox.

Второй вариант установки — с бывшей страницы Virtualbox, созданной пользователем Becase:

Прекрасно работает VirtualBox_*_Linux_x86.run

Необходимо обязательно иметь и в хост и в гостевой системе такие пакеты (версии не важны, важно, чтобы они были одинаковы и для вашего рабочего ядра)
  • kernel-headers-common
  • kernel-headers-std-smp
  • kernel-headers-modules-std-smp
Установка аддона — отдельная песня, но весьма несложная.
Аддон необходимо распаковать рутом, например, так

./VBoxLinuxAdditions.run --noexec --keep --target /root/VBoxInstall

В install.sh необходимо добавить в проверку версии xorg. Найдите строчки

7.1.* | 7.2.* )
           install -o 0 -g 0 -m 0644 vboxvideo_drv_71.so
$modules_dir/drivers/vboxvideo_drv.so
           install -o 0 -g 0 -m 0644 vboxmouse_drv_71.so
$modules_dir/input/vboxmouse_drv.so

И замените первую на

7.1.* | 7.2.* | 7.3.* )
           install -o 0 -g 0 -m 0644 vboxvideo_drv_71.so
$modules_dir/drivers/vboxvideo_drv.so
           install -o 0 -g 0 -m 0644 vboxmouse_drv_71.so
$modules_dir/input/vboxmouse_drv.so

А ещё, чуть выше, в строку

for dir in /usr/lib/xorg/modules /usr/X11R6/lib/modules; do

добавьте «наш» каталог для модулей

for dir in /usr/lib/X11/modules /usr/lib/xorg/modules /usr/X11R6/lib/modules; do

После чего, можно просто запускать install.sh (от рута) и перегружать гостевую ОС… всё работает :)

Что делать после обновления ядра, если у вас установлена закрытая версия версия VirtualBox

Если вы установили VirtualBox, а затем обновили ядро, то при следующем запуске VirtualBox вы получите такое сообщение:

[alexei@threebears ~]$ VirtualBox 
WARNING: The vboxdrv kernel module is not loaded. Either there is no module
         available for the current kernel (2.6.27-std-ll-alt7) or it failed to
         load. Please recompile the kernel module and install it by
           sudo /etc/init.d/vboxdrv setup
         You will not be able to start VMs until this problem is fixed.

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

[alexei@threebears ~]$ su -
Password: 
[root@threebears ~]# service vboxdrv setup
Stopping VirtualBox kernel module                                       [ DONE ]
Removing old VirtualBox netflt kernel module                            [ DONE ]
Removing old VirtualBox kernel module                                   [ DONE ]
Recompiling VirtualBox kernel module                                    [ DONE ]
Starting VirtualBox kernel module                                       [ DONE ]

Установка «Дополнений гостевой ОС» для гостевого ALT Linux

1. Установите модуль ядра kernel-modules-virtualbox-addition-<тип ядра> и вспомогательные пакеты для интеграции
apt-get install kernel-modules-virtualbox-addition-$(uname -r|cut -f2,3 -d-) virtualbox-guest-additions xorg-drv-vboxvideo


Перед любыми операщиями с установкой модуля ядра, надо обновить ядро с помощью команд:
apt-get update
update-kernel
И ни в коем случае не устанавливать модуль от другой ядерной сборки подробнее смотри: Обновление_ядра
2. Выберите в Центре управления системой  ⇒ Дисплей драйвер vboxvideo.
Примечание: Драйвер можно выбрать и в командной строке (под правами root):
alterator-cmdline /x11 action write _objects driver driver vboxvideo


Примечание: Если пункта «Дисплей» нет в Центре управления системой, установите пакет alterator-x11
3. Перезагрузите гостевую систему или только сеанс
4. Включите в меню виртуальной машины
  • Устройства  ⇒ Общий буфер обмена  ⇒ Двунаправленный
  • Устройства  ⇒ Drag'n'Drop  ⇒ Двунаправленный.

Общие папки

1. Установите в гостевой операционной системе дополнения гостевой операционной системы и virtualbox-guest-utils

apt-get install kernel-modules-virtualbox-addition-$(uname -r | cut -d "-" -f2,3) virtualbox-guest-utils

Этот пункт не нужен, если уже установлен пакет virtualbox-guest-additions, как описано выше.

2. Добавьте в свойствах виртуальной машины (раздел «Общие папки») папку. Для этого выберите путь и укажите имя папки (по умолчанию используется имя последней папки в указанном пути). Если хотите чтобы папка осталась настроенной и после перезагрузки гостевой операционной системы, установите флажок «Создать постоянную папку».
3. Для монтирования общих папок VirtualBox должен быть загружен модуль vboxsf
modprobe vboxsf
4. В гостевой операционной системе выполните
mount -t vboxsf <имя папки> /mnt
Внимание! Использование параметра -t в команде mount разрешено только пользователю root.


5. Общая папка становится доступна в /mnt.

Краткая инструкция для установки дополнений вручную

Внимание! идеологически неправильное решение!!![1]
  • Запускаем гостевой Линукс, и удаляем пакеты:
xorg-drv-vboxvideo
  • Ставим пакет kernel-headers-modules для своего ядра.
  • В окне VirtualBox, в меню "Устройства", выбираем "Установить дополнения гостевой ОС".
  • В гостевом Линуксе заходим на CD-ROM, находим там файл VBoxLinuxAdditions-x86.run (-amd64.run для соответствующей архитектуры), копируем его в /tmp.
  • В гостевом Линуксе открываем терминал, переходим в нём в рута (командой su -) и выполняем команду:
chmod a+x /tmp/VBoxLinuxAdditions-x86.run
/tmp/VBoxLinuxAdditions-x86.run
  • Далее исполняется скрипт, который сам все распакует, скомпилирует и установит.
  • Убеждаемся, что в гостевом Линуксе xorg.conf прописаны драйвер vboxvideo для видео.
  • Перезагружаем виртуальную машину.
  • Наслаждаемся автоизменением размеров окна, и "незалипающей" мышкой.

Примечания

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