如何仅通过命令行在CentOS上安装Virtualbox Guest Additions


74

阅读Virtualbox用户手册,我终于得到[ here ],它解释了如何通过命令行在Linux guest虚拟机上安装Virtualbox Guest Additions。

但这对我来说还不够清楚(我刚刚开始学习一些命令)。有人可以说出您通过CLI安装Virtualbox Guest Additions所使用的确切命令吗?(包括查找在其中已安装了virtualbox guest虚拟机的附件等)

Answers:


108

...最终,这对我有用,对尝试在命令行模式下在CentOS(x86_64)虚拟服务器上安装VirtualBox Guest Additions的其他人也应该有用。

# 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费里尔

6
@theJerm我希望您已经解决了这个问题,但是为了记录在案:使用创建挂载点(只是一个目录)sudo mkdir /media/cdrom
Anthon 2013年

5
在CentOS 6.4 64b的最小安装中,install命令为sh /media/cdrom/VBoxLinuxAdditions.run。我还必须安装Perl(yum install perl)并创建安装点(sudo mkdir -p /media/cdrom)。
smholloway

16
在CentOS 7中,光盘不在,/dev/scd0而是在/dev/sr0
isapir

3
如果有人想知道...在完成任何操作之前,您必须使用“ 插入来宾添加CD”映像(当前在virtualbox的窗口菜单中的“ 设备”中找到),才能VBoxLinuxAdditions.run真正可用。
alxs

15

@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与just相比504。安装正确的kernel-devel程序包后,进行构建,然后安装按预期进行。


因此,运行的内核和已安装的内核源(aka kernel-devel)必须匹配。您可以通过查看正在运行的内核来验证这一点

uname -a

以及安装的源

ls /usr/src/kernels

最后,无论发生什么情况,请查看提供的消息和日志文件。


我通过更新内核使内核源代码与内核匹配。yum更新内核。
迈克

1
如果不匹配,而您刚刚更新了内核->重新引导以匹配(如果可以)。


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

另外,我还收到了OpenGL支持模块的“ FAILED”消息,但是在服务器系统上可以忽略此消息。


2

安装VBOXADDITIONS之后,您可能需要执行以下操作:

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

因为在我将最终配置应用于VirtualBox之前,屏幕分辨率对我不起作用。


在Centos 7上,我仍然必须安装gcc,kernel-devel等
。– jamescampbell


1

第1步:

yum update

第2步:

Device-> Install Guest Additions CD Image -> Next

然后提供root密码。而已。


0

只是一点点细节...我的CentOS 6.6最低,完成了所有的“ yum更新”和“ yum安装”操作,但是直到我在Olaf的响应中读到此内容时,我仍然被困住了

...这是一个略有不同的版本,504.16.2与504略有不同。在安装了正确的kernel-devel软件包之后,进行构建,然后按预期进行安装。

因此,运行的内核和已安装的内核源(也称为kernel-devel)必须匹配。

检查我的安装,我遇到了同样的问题,重新启动后,一切正常。机器仍在使用旧内核运行。在此之后,缺少了下一个问题,因为该Perl,所以我还必须做一个

yum install perl
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.