如何在VirtualBox VM中安装Guest Additions?


Answers:


506

如果在VirtualBox VM中安装Ubuntu时遇到问题,因为安装程序窗口不适合低分辨率屏幕尺寸,则可以使用Alt+ 移动该窗口F7

从存储库安装来宾添加

如果我们已经从存储库安装了OSE版本的Virtual Box,则可以在来宾中添加来自存储库来宾添加项。这将安装与从存储库获得的Virtual Box版本匹配的来宾添加项。这是不建议作为从Oracle库中获得的虚拟盒的新版本安装这些(见下文)。

或者,我们可以在主机 Ubuntu中安装软件包virtualbox-guest-additions-iso

sudo apt-get install virtualbox-guest-additions-iso

带有guest附加CD的OSE版本映像的.iso文件将安装在主机目录中/usr/share/virtualbox/VBoxGuestAdditions.iso。在虚拟机的设置中将此.iso文件挂载为CD。在来宾中,您将可以使用安装程序访问CD-ROM。

从Virtual Box Manager安装来宾添加

万一Guest Additions无法构建,我们可能还必须另外安装Linux内核头文件(请参阅如何安装内核头文件?)或构建必备 安装基本版工具。还建议安装dkms 安装dkms(请参阅下面的注释4)。您可以在终端中运行以下命令来安装这两个命令:

sudo apt install build-essential dkms

选择设备->安装来宾添加(或在Virtual Box Manager中按Host+ D),来宾添加CD .iso将被加载,但未安装在来宾OS中。要进行安装,我们需要以VBoxLinuxAdditions.runroot用户或从自动运行提示符(请参见下文)运行安装程序脚本。


GNOME外壳

要安装Guest Additions,在安装虚拟驱动器后,我们将在桌面上显示CD图标:

在此处输入图片说明 下一步是通过打开驱动器并单击“运行软件”按钮,在此已安装的 CD 上运行autorun.sh脚本(以根用户身份)。这将构建并安装所需的vbox内核模块。


统一

来宾添加项作为虚拟CD挂载在启动器上:

在此处输入图片说明

如果系统设置为自动运行CD,则应打开以下自动运行对话框(如果未选择CD符号,请选择“打开”,然后选择“ 打开自动运行提示”)。

在此处输入图片说明

输入用于root用户访问的凭据后,从终端输出中可以看到来宾添加的对象:

在此处输入图片说明

按下Return以关闭终端。


注意1
来宾添加需要重新启动来宾OS才能生效。

注2
在一些系统中,虚拟盒客户添置CD图标可能不会在桌面上显示,但会从访问的地方菜单。如果CD仍然不存在,则可能必须在Virtual Box Manager的“ 存储”菜单中手动将VBoxGuestAdditions.iso添加为CD-ROM 。在Ubuntu主机中,磁盘映像位于/usr/share/virtualbox/VBoxGuestAdditions.iso

注意3
在某些系统中(例如,在运行Xubuntu guest 虚拟机时),我们可能没有针对已安装CD 的自动运行提示。然后,我们可以通过在已安装的来宾添加项.iso上打开一个终端来运行来安装来宾添加项sudo ./VBoxLinuxAdditions.run。在LubuntuUbuntu Server guest 虚拟机中,我们还需要在guest 虚拟机系统中安装GNU C编译器(gcc 安装gcc)和make 安装make实用程序,以便能够编译guest虚拟机添加的内容。

注意4在来宾操作系统中
运行DKMS,将在来宾内核更新后保持安装来宾添加。它不是来宾添加的先​​决条件,但如果已使用,则应在安装来宾添加之前先安装它。


从终端安装来宾添加

如果没有正确安装Guest Additions,我们可能无法引导到GUI。在这种情况下,我们需要按住Shift键启动以访问Grub菜单,在该菜单中,我们访问根shell,如以下问题所示(我们确实需要挂载文件系统读/写才能继续):

需要/dev/cdrom从Virtual Box Manager 上安装Guest Additions .iso文件(请参见上文)。然后,我们可以通过键入以下命令来安装Guest Additions:

mount /dev/cdrom /mnt              # or any other mountpoint
cd /mnt
./VBoxLinuxAdditions.run
reboot

删除访客添加

如果安装来宾添加程序出现问题,或者来宾操作系统在安装后无法启动,我们可能必须删除这些添加程序。也可以通过运行来宾目录中的卸载脚本从根外壳程序完成此操作。 /opt

cd /opt/<VirtualBoxAdditions-x.x.xx>/
sudo ./uninstall.sh

x.x.xx用您当前版本的访客添加替换。


9
尝试在Ubuntu Server上安装Guest Additions时遇到了这个答案。如果需要在服务器上安装,则缺少一个步骤:首先运行sudo apt-get install dkms。(参考文献virtualbox.org/manual/ch04.html#idp19765808
查尔斯Roper的

1
我尝试将ubuntu 12.10服务器作为来宾,将Mac OS X作为主机来解决。虚拟盒子是4.2.6。我无法使共享文件夹正常工作。不知何故,来宾添加项不起作用。甚至“设备”>“安装来宾添加”也无法正常工作。甚至包virtualbox-guest-additions都没有帮助。每次运行iso GuestAdditions.iso的尝试都不会导致iso显示在/ media / cdrom下。请指教。
Kim Stacks 2013年

1
@kimsia:您需要首先在服务器中安装 .iso。之后,您可以使用sudo ./<mountpoint>/VBoxLinuxAdditions.run
Takkat 2013年

@Takkat安​​装完全无法使用。在其他新闻中,我终于找到了使一切正常的方法。superuser.com/a/527508/8184,非常感谢您回答我。非常感谢:)
Kim Stacks 2013年

2
@IIIIIllllllllIlllllIIIIIIIIlll:当然-涵盖所有内容,都是“规范的”问答环节。即将。缺少任何东西,过时了吗?
塔卡特

97

您也可以尝试以下操作(在Update Manager杀死它们后,我不得不重新安装Guest Addtitions后,这对我有用)。解决方案在这里找到:

http://www.unixmen.com/install-guest-addition-in-ubuntu-1010-maverick-meerkat-f​​ix/

综上所述:

sudo apt-get update
sudo apt-get install build-essential linux-headers-$(uname -r)
sudo apt-get install virtualbox-ose-guest-x11

这找到并更新了VirtualBox Guest Additions的正确版本,并且我的系统似乎再次正常运行,并且我假设如果Guest Additions无法从菜单项安装,这也将起作用。

另外一件值得注意的事情。我最初试图在鱼壳下运行它-确保您正在使用bash(即在开始之前在终端中键入“ bash”)。


注意在较新的系统上,命令已更改为

sudo apt-get install virtualbox-guest-x11

即使我正在全新安装的ubuntu服务器中安装,您的回答也有所帮助。谢谢。superuser.com/questions/527507/...
金筹码

15
该软件包virtualbox-guest-x11在较新的系统上被调用。我认为这应该是一个可以接受的答案,因为与使用进行安装的用户相比,来自ISO的来宾添加可能不会自动更新apt-get
krlmlr 2014年

1
请注意,我不必安装build-essentials在新安装的14.04上,并且已经安装了linux-header。因此sudo apt-get install virtualbox-guest-x11,我要做的就是在客户机系统上运行。
pcworld 2014年

1
由于上述原因,我喜欢使用此方法。但是,它对OSX主机(10.9.3)和VirtualBox(4.3.12)的Ubuntu 12.04 guest虚拟机不起作用。我不得不使用ISO安装askubuntu.com/a/22745/24203(否则有not such device error stackoverflow.com/questions/3492466/...
伊萨克

1
好的,这对我有用。ubuntu 32和64版本14.04
Kangarooo

35

在来宾操作系统中,安装软件包virtualbox-guest-dkms。例如,使用终端应用程序,键入sudo apt-get install virtualbox-guest-dkms


2
在Ubuntu 14 LTS上为我工作。
Jongosi 2015年

2
为我工作的Ubuntu 16.04
InvincibleWolf

在Ubuntu 16.04.1。上为我工作。确保安装后重新引导计算机。工作无表情。
Giora Guttsait

使用16.04.4(尽管仍然需要对图形设置进行调整...)
Ben Bolker

1
在Ubuntu 18.0.4.1LTS上为我工作。但是,我仍然无法将内容从主机复制并粘贴到来宾(也不能使用此处提到的任何其他方法);在那之后不应该工作吗?
卡罗·伍德

22

标准 “的VirtualBox来宾,增加”包上提供的.ISO 甲骨文,有不同的客户机操作系统的通用工具...

但是,Ubuntu有其专用的特定Ubuntu的 Guest Addon软件包...,
名为virtualbox-ose-guest-dkms and ..-x11 and ..-utils

这些'virtualbox-ose-guest- *'软件包支持DKMS。 "(DKMS is a framework designed to allow individual kernel modules to be upgraded without changing the whole kernel.)"

这是我5个月前就此问题问的一个问题的链接... 如何使Compiz在VirtualBox VM中工作


我收到“无法找到包virtualbox-ose-guest-dkms”。我需要添加适当的回购吗?
Dan Dascalescu 2014年

1
我认为您需要在较新的Ubuntu上安装的是package virtualbox-guest-x11,它将吸收任何其他所需的依赖关系。
Lambart 2014年

1
现在称为virtualbox-guest-dkms。顺便说一句,这是该线程中唯一可以接受的答案,因为这是我的来宾添加项在VBox中工作的唯一方法。我已经将用户提前添加到vboxusers组,这可能有帮助吗?
埃里卡斯(Erikas)

16

这是我运行的最终成功的步骤,但是正如上面名为“ pcworld”的用户所述,可能是实际只需要最后一条命令的情况。我永远不会知道,但是我想分享一下,以防其他人受益:

sudo apt-get install virtualbox-guest-additions-iso
sudo apt-get update 
sudo apt-get dist-upgrade
sudo apt-get install virtualbox-guest-x11

并且不要忘记将VirtualBox实例设置为使用128MB视频ram,并在实例的“显示”设置部分下启用Enable 3D Acceleration,以获得良好的性能。


在无业游民中安装docker后,Guest Addition出现了该错误。sudo apt-get dist-upgrade做到了。谢谢克莱。
罗伯特·加布里埃尔

16

以下是在VM内安装VirtualBox Guest Additions内核模块的手动步骤:

  1. 下载ISO文件,例如

    wget http://download.virtualbox.org/virtualbox/5.0.20/VBoxGuestAdditions_5.0.20.iso -P /tmp
    
  2. 挂载ISO文件:

    sudo mount -o loop /tmp/VBoxGuestAdditions_5.0.20.iso /mnt
    
  3. 运行安装程序(添加-xsh进行调试):

    sudo sh /mnt/VBoxLinuxAdditions.run
    

要找到正确版本的ISO文件,请在以下位置进行检查:http : //download.virtualbox.org/virtualbox/


如果您使用的是Vagrant,则执行以下命令将使安装更加简单:

vagrant plugin install vagrant-vbguest
vagrant up
vagrant vbguest

1
这些步骤最终使我拥有了一个全屏终端。我的主机操作系统是Windows 7,VirtualBox版本5.1。我的客户操作系统是Ubuntu 16.04.1 LTS。我在/ etc / default / grub中也有以下两行:GRUB_GFX_MODE = 1600x1200和GRUB_GFXPAYLOAD_LINUX = keep
James Nicholson

绝对是被低估的答案-超级简单,将使您可以安装比apt repo更高的Guest Additions版本。另外,无需将虚拟CD-ROM驱动器添加到来宾!
bonh '17

1
最佳答案。IDK为什么所有其他答案都采取不必要的步骤,例如从源代码构建或创建虚拟驱动器。
sudo

13

这对我适用于Ubuntu Server 14.04来宾VM(无GUI):

编辑:也适用于Ubuntu Server 15.04和16.04

1)安装dkms。从来宾运行:

sudo apt-get install dkms

2)从VirtualBox VM窗口菜单中选择:设备->插入来宾添加CD映像...

3)使用blkid标识CD-ROM设备。从来宾运行:

sudo blkid

输出中的其中一行应如下所示:

/dev/sr0: LABEL="VBOXADDITIONS_4.3.16_95972" TYPE="iso9660"

第一部分(/dev/sr0)是CD-ROM设备的名称。

4)装入CD(替换/dev/sr0为上面找到的设备名称):

sudo mount /dev/sr0 /media/cdrom/

5)运行Guest Additions安装程序:

sudo /media/cdrom/VBoxLinuxAdditions.run

6)重新启动访客。


2
sudo sh /media/cdrom/VBoxLinuxAdditions.runsh之所以需要 ,是因为CD已在未经执行许可的情况下挂载。
史蒂夫·投手

您好@DavidLevesque,我已经在16.04中尝试过,但是不幸的是我无法运行它。我也尝试了--nox11参数。你有什么主意吗?
efkan's

@efkan除非您提供更多详细信息,否则我不知道。它在Ubuntu 16.04上对我有用。
David Levesque

@DavidLevesque你是对的:)我在Windows 10上使用VirtualBox v5.0.26,然后在VirtualBox中安装Ubuntu Server 16.04.1。(服务器没有X Window系统)然后,我按照此处的步骤进行操作:en.ig.ma/notebook/2012/… 。然后,我重新启动并尝试执行复制粘贴操作,但看不到任何操作。谢谢。
efkan's

8

virtualbox-guest-additions必须安装该软件包。此外,似乎没有任何反应,但是所有的“ Install Guest Additions”按钮都在安装CDROM。您应该打开文件管理器(Nautilus / Dolphin),选择“ CD设备”并运行安装程序。


8

程序很简单。

在“ Virtual Box”菜单中,选择“ 设备” >“ 插入来宾添加CD映像...”

以下弹出窗口将出现在您的Ubuntu桌面上:

来宾添加弹出窗口

选择,Run然后将自动安装来宾添加。


2
为我工作在Windows 10上的Oracle VM 5.0上安装的Ubuntu 14.04 LTS上。仅2次单击.....谢谢!
Sym-Sym

2
这是最佳答案,因为它可以确保为您的特定版本的VirtualBox更新来宾添加。Ubuntu的软件包和wget其他答案中的URL可能已过时。
Chai T. Rex

1
在Ubuntu 18.04中为我工作
Rennish Joseph

2

如果您有来宾附加.iso,请通过来宾OS设置将其安装在VirtualBox中。然后启动来宾操作系统并运行vboxwindowsadditions-x86或amd64 exe。


2

对于Ubuntu 16.04 Virtualbox中的Lubuntu 16.04用户

在尝试了许多主流通用指令之后,我发现了Lubuntu的特定指令

将Virtualbox Guest Additions安装到Lubuntu虚拟机上

第一步:安装所需的软件

sudo apt-get update
sudo apt-get install make gcc

接下来,使用Virtualbox下载来宾添加,然后从Virtualbox菜单中选择“安装来宾添加”。

如果未在文件管理器中弹出VBOXADDITIONS cd,请使用文件管理器打开VBOXADDITIONS cd的内容,然后通过转到文件管理器的菜单并选择“在终端中打开当前文件夹”在此打开一个终端。

sudo sh VBoxLinux*

重新启动并享受!


-2

在VirtualBox中打开Ubuntu。打开FireFox,然后转到此处:http :
//download.virtualbox.org/virtualbox/

查找您的Virtualbox版本,然后单击链接将其打开。

下载您的VBoxGuestAdditions版本(iso):

在存档管理器中将其打开并解压缩文件。

跑: sudo VBoxLinuxAdditions.run

重启。

如果您无法在VirtualBox中打开iso文件(ISO9660错误),则此方法有效。

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.