Как установить гостевые дополнения Virtualbox на CentOS только через командную строку


74

Читая руководство пользователя Virtualbox, я наконец-то получил [ здесь ], который объясняет, как установить гостевые дополнения Virtualbox на гостевой Linux через командную строку.

Но это не совсем понятно для меня (я только начал изучать некоторые команды). Может кто-то записать точные команды, которые вы использовали бы для установки гостевых дополнений Virtualbox через CLI? (который включает в себя поиск мест, где были добавлены гостевые дополнения виртуальной коробки и т. д.)

Ответы:


109

... наконец, это сработало для меня, должно также сработать для всех, кто пытается установить VirtualBox Guest Additions на виртуальном сервере CentOS (x86_64) в режиме командной строки.

# yum update
# yum install dkms gcc make kernel-devel bzip2 binutils patch libgomp glibc-headers glibc-devel kernel-headers
# mkdir -p /media/cdrom
# mount /dev/scd0 /media/cdrom
# sh /media/cdrom/VBoxLinuxAdditions.run

Когда процесс завершится, перезагрузите систему. Вот и все.


3
Тебе yum install makeтоже нужно
nic ferrier

6
@theJerm Надеюсь, вы уже поняли это, но для справки: создайте точку монтирования (просто каталог) с помощью sudo mkdir /media/cdrom.
Антон

5
На минимальной установке CentOS 6.4 64b команда установки была sh /media/cdrom/VBoxLinuxAdditions.run. Мне также пришлось установить Perl ( yum install perl) и создать точку монтирования ( sudo mkdir -p /media/cdrom).
smholloway

18
В CentOS 7 cdrom находится не в, /dev/scd0а в/dev/sr0
isapir

4
В случае, если люди задаются вопросом ... прежде чем что-либо из этого будет сделано, вам нужно использовать образ компакт-диска «Вставить гостевые дополнения» (в настоящее время находится в разделе « Устройства» в меню окна виртуальной коробки), VBoxLinuxAdditions.runчтобы он был фактически доступен.
alxs

16

Ответ @ its_me почти сработал, но не удалось собрать некоторые модули ядра.

Если это не работает для вас, посмотрите на сообщения.

В моем случае один из них попросил разобраться /var/log/vboxadd-install.log. Там он сказал что - то о пропавших источниках ядра и предоставить каталог исходных кодов ядра с , например KERN_DIR=/path/to/kernel/sources.

Поскольку kernel-develи источники в /usr/src/kernels/2.6.32-504.16.2.el6.x86_64уже были установлены, я запутался, но вызвал его с запрошенной переменной среды

KERN_DIR=/usr/src/kernels/2.6.32-504.16.2.el6.x86_64 sh /media/cdrom/VBoxLinuxAdditions.run

Теперь он пожаловался на отсутствие заголовочных файлов и предложил сделать

yum install kernel-devel-2.6.32-504.el6.x86_64

Как видите, это немного другая версия, чем 504.16.2просто 504. После установки соответствующего kernel-develпакета сборка и установка работали, как и ожидалось.


Итак, работающее ядро ​​и установленные исходные коды ядра (aka kernel-devel) должны совпадать. Вы можете убедиться в этом, посмотрев на работающее ядро ​​с

uname -a

и установленные источники на

ls /usr/src/kernels

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


Я сделал исходники ядра соответствующими ядру, обновив ядро. ням обновить ядро.
Майк

1
Если он не совпадает, и вы только что обновили ядро ​​-> перезагрузитесь, чтобы соответствовать (если можете).
нашей эры

6

Это старая ветка, но я нашел в поиске похожую проблему. В случае, если кто-то столкнется с этим, следующий ответ решил это для меня:

http://www.if-not-true-then-false.com/2010/install-virtualbox-guest-additions-on-fedora-centos-red-hat-rhel/

Примечание * В URL указано 2010, но статья была обновлена ​​в 2013 году.


3
Эти шаги намного лучше, потому что они включают в себя все необходимые предпосылки, такие как perl и dkms
bmaupin

3

Я публикую обновленный ответ, потому что мне нужно было выполнить несколько дополнительных шагов для установки. Я использую VirtualBox 5.0.14r105127. Каждая команда должна начинаться с «sudo».

yum update
yum install gcc
yum install kernel-devel
yum install bzip2
yum install kernel-devel-2.6.32-573.el6.i686
mkdir /media/cdrom
mount /dev/scd0 /media/cdrom
sh /media/cdrom/VBoxLinuxAdditions.run

Кроме того, я получил сообщение «FAILED» для модуля поддержки OpenGL, но это может быть проигнорировано в серверной системе.


2

После установки VBOXADDITIONS вам может понадобиться сделать следующее:

In VirtualBox click View>>Auto Resize Guest Display (Host + G)

потому что разрешение экрана у меня не работало, пока я не применил эту окончательную конфигурацию к VirtualBox.


На Centos 7 мне все еще нужно было установить gcc, kernel-devel и т. Д.
jamescampbell

2

Если вы используете Vagrant для сценариев вашего VirtualBox, вы можете просто установить плагин vb-guest. Исходный код для того же можно найти здесь https://github.com/dotless-de/vagrant-vbguest/tree/master/lib/vagrant-vbguest .

Некоторые подсказки можно почерпнуть из исходного кода здесь, чтобы автоматизировать этот процесс.


1

Шаг 1:

yum update

Шаг 2:

Перейти к Device-> Install Guest Additions CD Image -> Next

Затем введите пароль пользователя root. Вот и все.


0

Просто небольшая деталь ... У меня был CentOS 6.6 минимальный, я сделал все "yum update" и "yum install", но я все еще застрял, пока не прочитал это в ответе Олафа

... это немного другая версия, 504.16.2 по сравнению с просто 504. После установки соответствующего пакета kernel-devel сборка и установка работали как положено.

Итак, работающее ядро ​​и установленные исходные коды ядра (также называемые kernel-devel) должны совпадать.

проверяя мою установку, у меня возникла та же проблема, после перезагрузки все было в порядке. Машина все еще работала со старым ядром. После этого возникла следующая проблема, так как этот Perl отсутствовал, поэтому мне пришлось сделать также

yum install perl
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.