Установка VirtualBox внутри OpenVZ - недостающие источники

9

Я пытаюсь установить VirtualBox внутри удаленного экземпляра OpenVZ, на котором у меня есть хорошая сделка. Дело в том, чтобы запустить небольшую коробку Windows XP для какого-то Windows Server.

  • Да, это эксперимент.
  • Нет, это не для производства.

Кажется, что все будет работать нормально, но установщик не может найти источники моего дистрибутива. В моем экземпляре установлен Debian 6. Бег uname -rдает мне 2.6.32-042stab061.2. Я просмотрел все в своем apt-cache на предмет чего-то похожего, попробовал установить linux-sources-2.6.32 и различные заголовки linux, но мне не повезло.

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

jocull
источник
1
Openvz не является реальной виртуальной машиной. Вы запускаете ядро ​​хоста, а не свое собственное. Вы не можете загружать модули ядра в ваше ядро ​​из контейнера. Это ядро ​​выглядит как ядро ​​RHEL / Centos 6, предоставляемое Openvz.
Иордания
Значит ли это, что это невозможная цель? Что, если в контейнере также работает CentOS 6 - будет ли этого достаточно для его запуска?
jocull
2
Да, это невозможная цель изнутри контейнера. Если вы не можете загрузить модули ядра, вы не можете запустить virtualbox.
Иордания
Спасибо. Если вы хотите добавить это в качестве ответа, я дам вам кредит за это.
jocull

Ответы:

7

В OpenVZ вы не имеете никакого контроля над ядром. Это связано с тем, что OpenVZ не виртуализирует оборудование и представляет собой «контейнер», а не виртуальную машину на узле узла. Поскольку вы не сможете загрузить модули в ядро ​​хоста, это будет невозможно.

jordanm
источник
5

Решение для запуска VirtualBox внутри OpenVZ (в контейнере OpenVZ) является простым. Эта процедура была протестирована на ProxMox VE 2.2

  1. Предполагая, что у вас есть контроль над хостом OpenVZ (например, с помощью вашей частной установки Proxmox)
  2. Установите VirtualBox из backports на хост-компьютере OpenVZ, версия 4.0.10 (модули ядра будут собраны автоматически):
  3. Присоедините узлы устройства virtualbox к контейнеру, в котором вы хотите запустить virtualbox:
    • vzctl set <VEID> --devnodes vboxdrv:rw --devnodes vboxnetctl:rw --save
  4. Установите VirtualBox из бэкпортов внутри контейнера так же, как в пункте 1 выше.
  5. Запустите VirtualBox внутри контейнера. Сеть NAT работает, Переадресация портов работает, Сеть только для хоста не работает.
Вячеслав Стецкевич
источник
Спасибо за информацию! К сожалению, в этом случае я не имею никакого контроля над хостом OpenVZ, только экземпляр :(
jocull
1
Иногда установка VirtualBox также устанавливает ядро ​​внутри контейнера. Это, очевидно, не будет работать и оставит dpkg в нерабочем состоянии - вам придется вручную удалить ядро, чтобы оно снова заработало правильно.
Лео Лам