VirtualBox
Материал из ALT Linux Wiki
Строка 3: | Строка 3: | ||
В феврале 2008 Innotek был приобретён компанией Sun Microsystems, модель распространения VirtualBox при этом не изменилась. | В феврале 2008 Innotek был приобретён компанией Sun Microsystems, модель распространения VirtualBox при этом не изменилась. | ||
- | Пакеты свободной версии VirtualBox есть в составе дистрибутивов ALT Linux | + | Пакеты свободной версии VirtualBox есть в составе дистрибутивов ALT Linux, начиная с Desktop 4.1. При установке системы можно выбрать группу "Виртуализация" для установки Virtualbox по умолчанию. |
- | == Установка | + | == Установка свободной версии VirtualBox из пакетов == |
- | Чтобы воспользоваться Virtualbox, | + | Чтобы воспользоваться Virtualbox, необходимо установить следующий набор пакетов: |
virtualbox-2.1.4-alt5 | virtualbox-2.1.4-alt5 | ||
Строка 13: | Строка 13: | ||
kernel-modules-virtualbox-std-def-2.1.4-alt1.132635 | kernel-modules-virtualbox-std-def-2.1.4-alt1.132635 | ||
- | + | При этом, они должны быть строго одной версии (2.1.4 в данном случае) и модуль ядра должен быть строго версии для вашего ядра (std-def в данном случае). | |
- | Чтобы это обеспечить, ядро и пакеты | + | Чтобы это обеспечить, ядро и пакеты необходимо устанавливать из одного и того же репозитория. |
Узнать версию загруженного ядра можно так: | Узнать версию загруженного ядра можно так: | ||
Строка 20: | Строка 20: | ||
2.6.27-std-def-alt15 | 2.6.27-std-def-alt15 | ||
- | Если у вас в виртуальной машине ( | + | Если у вас в виртуальной машине (гостевая система) тоже ALTLinux, то можно установить в ней "дополнения гостевой системы": |
kernel-modules-virtualbox-addition-std-def-2.1.4-alt1.132635.15 | kernel-modules-virtualbox-addition-std-def-2.1.4-alt1.132635.15 | ||
Строка 30: | Строка 30: | ||
crw-rw---- 1 root vboxusers 10, 58 Май 5 08:46 /dev/vboxdrv | crw-rw---- 1 root vboxusers 10, 58 Май 5 08:46 /dev/vboxdrv | ||
- | поэтому | + | поэтому необходимо включить своего пользователя в группу vboxusers |
gpasswd -a user vboxusers | gpasswd -a user vboxusers | ||
и перелогиниться. | и перелогиниться. | ||
- | После чего можно запускать Virtualbox, например, в KDE из меню: K- Система — Виртуализатор Virtualbox. | + | После чего, можно запускать Virtualbox, например, в KDE из меню: K- Система — Виртуализатор Virtualbox. |
== Настройка сети в гостевой системе Virtualbox == | == Настройка сети в гостевой системе Virtualbox == | ||
Строка 41: | Строка 41: | ||
Чтобы гостевая система получила доступ к подсети, в которой находится хост-система, можно сделать так: | Чтобы гостевая система получила доступ к подсети, в которой находится хост-система, можно сделать так: | ||
- | Настроить в хост-системе туннель и бридж как описано в пунктах [[Etcnet#Настройка tun/tap интерфейса|3.7]] и | + | Настроить в хост-системе туннель и бридж, как описано в пунктах [[Etcnet#Настройка tun/tap интерфейса|3.7]] и |
[[Etcnet#Как настроить Ethernet-мост|3.6]] статьи Etcnet. | [[Etcnet#Как настроить Ethernet-мост|3.6]] статьи Etcnet. | ||
- | Соответственно, сначала | + | Соответственно, сначала необходимо запустить интерфейс туннеля tap0, а затем объединить его в мост с интерфейсом вашей физической сетевой карты (например, eth0). |
- | После того | + | После того как вы убедитесь, что сеть на хост-системе после этой настройки работает как и раньше, вы можете использовать туннель в Virtualbox: |
- | Зайдите в свойства виртуальной машины, раздел "сеть", и выберите " | + | Зайдите в свойства виртуальной машины, раздел "сеть", и выберите "Подсоединён к" — "Хост-интерфейс", а ниже в поле "Хост-интерфейсы" — выберите tap0. |
- | После | + | После этого, при загрузке, гостевая система получит доступ к той же подсети, что и хост-система, и будет выступать равноправным компьютером в сети со своим IP адресом. IP адрес и другие настройки интерфейсу следует назначать средствами гостевой системы. |
+ | <br/><br/> | ||
+ | |||
+ | == Установка проприетарной сборки VirtualBox == | ||
+ | |||
+ | Свободная версия VirtualBox не позволяет использовать USB в гостевой системе, что иногда критически важно. В этом случае придётся использовать закрытую бинарную сборку с сайта разработчиков программы. | ||
+ | |||
+ | === Что потребуется для установки? === | ||
+ | Во-первых, очевидно, потребуется файл с инсталлятором 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, в системе должен быть установлен пакет '''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 (через 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 | ||
+ | Установка аддона — отдельная песня, но весьма несложная. | ||
+ | |||
+ | Аддон необходимо распаковать рутом, например, так: | ||
+ | <code> | ||
+ | ./VBoxLinuxAdditions.run --noexec --keep --target /root/VBoxInstall | ||
+ | </code> | ||
+ | |||
+ | В install.sh необходимо добавить в проверку версии xorg. | ||
+ | Найдите строчки | ||
+ | <code> | ||
+ | 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 | ||
+ | </code> | ||
+ | И замените первую на | ||
+ | <code> | ||
+ | 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 | ||
+ | </code> | ||
+ | А ещё, чуть выше, в строку | ||
+ | <code> | ||
+ | for dir in /usr/lib/xorg/modules /usr/X11R6/lib/modules; do | ||
+ | </code> | ||
+ | добавьте «наш» каталог для модулей | ||
+ | <code> | ||
+ | for dir in '''/usr/lib/X11/modules''' /usr/lib/xorg/modules /usr/X11R6/lib/modules; do | ||
+ | </code> | ||
+ | |||
+ | После чего, можно просто запускать install.sh (от рута) и перегружать гостевую ОС… всё работает :) | ||
+ | |||
+ | === Что делать после обновления ядра === | ||
+ | Если вы установили 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 ] | ||
+ | |||
+ | |||
+ | [[Category:HOWTO]] | ||
+ | |||
+ | == Установка "дополнений гостевой ОС" для гостевого ALT Linux == | ||
+ | === Почему бы не поставить то, что есть в дистрибутиве === | ||
+ | На момент написания этой статьи в дистрибутиве есть драйверы для Xorg (vboxmouse и vboxvideo), но от очень старой версии VB, они не работают с новыми версиями Xorg. | ||
+ | |||
+ | === Краткая инструкция === | ||
+ | '''ВНИМАНИЕ: идеологически неправильное решение!!!'''<ref>Идеологически правильно дождаться, пока мэйнтейнер соберёт новую версию драйверов в дистрибутив.</ref> | ||
+ | * Запускаем гостевой Линукс, и удаляем пакеты: | ||
+ | xorg-x11-drv-vboxvideo | ||
+ | xorg-x11-drv-vboxmouse | ||
+ | * Ставим пакет '''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''' для видео и '''vboxmouse''' для мышки. | ||
+ | * Перезагружаем виртуальную машину. | ||
+ | * Наслаждаемся автоизменением размеров окна, и "незалипающей" мышкой. | ||
+ | |||
+ | == Примечания == | ||
+ | <references /> | ||
[[Категория:Виртуализация]] | [[Категория:Виртуализация]] | ||
[[Категория:Enterprise Software]] | [[Категория:Enterprise Software]] |
Версия 22:29, 15 марта 2011
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 из пакетов
Чтобы воспользоваться Virtualbox, необходимо установить следующий набор пакетов:
virtualbox-2.1.4-alt5 virtualbox-common-2.1.4-alt5 kernel-modules-virtualbox-std-def-2.1.4-alt1.132635
При этом, они должны быть строго одной версии (2.1.4 в данном случае) и модуль ядра должен быть строго версии для вашего ядра (std-def в данном случае). Чтобы это обеспечить, ядро и пакеты необходимо устанавливать из одного и того же репозитория. Узнать версию загруженного ядра можно так:
$uname -r 2.6.27-std-def-alt15
Если у вас в виртуальной машине (гостевая система) тоже ALTLinux, то можно установить в ней "дополнения гостевой системы":
kernel-modules-virtualbox-addition-std-def-2.1.4-alt1.132635.15 virtualbox-guest-additions-2.1.4-alt5
Virtualbox использует для работы устройство
$ ls -l /dev/vboxdrv crw-rw---- 1 root vboxusers 10, 58 Май 5 08:46 /dev/vboxdrv
поэтому необходимо включить своего пользователя в группу vboxusers
gpasswd -a user vboxusers
и перелогиниться. После чего, можно запускать Virtualbox, например, в KDE из меню: K- Система — Виртуализатор Virtualbox.
Настройка сети в гостевой системе Virtualbox
Чтобы гостевая система получила доступ к подсети, в которой находится хост-система, можно сделать так:
Настроить в хост-системе туннель и бридж, как описано в пунктах 3.7 и 3.6 статьи Etcnet.
Соответственно, сначала необходимо запустить интерфейс туннеля tap0, а затем объединить его в мост с интерфейсом вашей физической сетевой карты (например, eth0).
После того как вы убедитесь, что сеть на хост-системе после этой настройки работает как и раньше, вы можете использовать туннель в Virtualbox:
Зайдите в свойства виртуальной машины, раздел "сеть", и выберите "Подсоединён к" — "Хост-интерфейс", а ниже в поле "Хост-интерфейсы" — выберите tap0.
После этого, при загрузке, гостевая система получит доступ к той же подсети, что и хост-система, и будет выступать равноправным компьютером в сети со своим IP адресом. IP адрес и другие настройки интерфейсу следует назначать средствами гостевой системы.
Установка проприетарной сборки VirtualBox
Свободная версия VirtualBox не позволяет использовать USB в гостевой системе, что иногда критически важно. В этом случае придётся использовать закрытую бинарную сборку с сайта разработчиков программы.
Что потребуется для установки?
Во-первых, очевидно, потребуется файл с инсталлятором 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 (через 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 вы получите такое сообщение:
[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
Почему бы не поставить то, что есть в дистрибутиве
На момент написания этой статьи в дистрибутиве есть драйверы для Xorg (vboxmouse и vboxvideo), но от очень старой версии VB, они не работают с новыми версиями Xorg.
Краткая инструкция
ВНИМАНИЕ: идеологически неправильное решение!!![1]
- Запускаем гостевой Линукс, и удаляем пакеты:
xorg-x11-drv-vboxvideo xorg-x11-drv-vboxmouse
- Ставим пакет 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 для видео и vboxmouse для мышки.
- Перезагружаем виртуальную машину.
- Наслаждаемся автоизменением размеров окна, и "незалипающей" мышкой.
Примечания
- ↑ Идеологически правильно дождаться, пока мэйнтейнер соберёт новую версию драйверов в дистрибутив.