无法在Virtual Box上安装Guest Additions CD镜像。

点击“设备”中的“插入增强功能 CD 镜像”时出现错误。
Unable to insert the virtual optical disk /Applications/VirtualBox.app/Contents/MacOS/VBoxGuestAdditions.iso into the machine VirtualUbuntu.
Would you like to try to force insertion of this disk?
Could not mount the media/drive    '/Applications/VirtualBox.app/Contents/MacOS/VBoxGuestAdditions.iso' (VERR_PDM_MEDIA_LOCKED).

Result Code: 
NS_ERROR_FAILURE (0x80004005)
Component: 
Console
Interface: 
IConsole {8ab7c520-2442-4b66-8d74-4ff1e195d2b6}
Callee: 
IMachine {480cf695-2d8d-4256-9c7c-cce4184fa048}

我可以在VirtualBox列表中看到VBoxGuestAdditions。
homeuser@ubuntu:/usr/share/virtualbox$ ls -l
drwxr-xr-x 2 root root 4096 Jan 14 12:46 nls
-rw-r--r-- 1 root root 64647168 Apr 7 2014 VBoxGuestAdditions.iso
-rwxr-xr-x 1 root root 2176 Apr 6 2014 VBox.sh
-rwxr-xr-x 1 root root 4161 Apr 7 2014 VBoxSysInfo.sh

有什么建议吗?


2你的主机操作系统是什么?MacOS 没有客户附加组件。 - Takkat
操作系统是MAC。已在Virtual Box上安装了Ubuntu。谢谢! - Rads
可能是重复的问题,参考链接:如何在VirtualBox虚拟机中安装Guest Additions? - Eliah Kagan
@xralf - 在这种情况下,最好发表一个新问题。原始问题非常久远。 - sancho.s ReinstateMonicaCellio
@sancho.sReinstateMonicaCellio 好的,我发布了另一个问题 - xralf
17个回答

我假设您的主机操作系统是Mac OS X,并且已经安装了Ubuntu作为客户操作系统。
如果您的客户操作系统是Ubuntu,那么就不需要挂载客户附加ISO并从中安装。
相反,打开终端并输入以下命令 -
sudo apt-get install virtualbox-guest-utils

这将安装客户附加组件,与通过ISO安装基本上是等效的。

10关于“无需安装Guest Additions”的陈述是自以为是的,实际上并没有解决CD挂载失败的根本问题。在我的经验中,Guest Additions CD提供的驱动程序更加新,性能更佳,比Ubuntu PPA提供的更好。此外,正如@chovy所解释的那样,当在非基于Ubuntu的发行版上接收到时,这个解决方案不能很好地扩展。请参见下面dave-rose的答案以获得更好的解决方案。 - tresf
1在Debian上安装VirtualBox客户附加组件的方法请参考:https://virtualboxes.org/doc/installing-guest-additions-on-debian/ @chovy - Caleb Jay
命令brew install virtualbox-guest-utils也可以使用 - Arefe
5这并没有回答问题... 它是关于VERR_PDM_MEDIA_LOCKED错误的。 - Kamafeather
安装了virtualbox-guest-utils之后,你实际上如何使用它呢? - Xedni

我最近(2017年9月)在一个新安装的Ubuntu 16.04虚拟机中,尝试将Guest Additions安装到Oracle VM VirtualBox Manager版本5.1.28时遇到了问题。宿主机是Windows 10。
问题是Guest Additions CD镜像已经挂载。解决方法如下:
  1. 在VM Manager中进入“设置” -> “存储”。
  2. 在控制器下右键点击“VBoxGuestAdditions”,选择“删除附件”。会出现确认框,点击“删除”。
  3. 点击“控制器”旁边的+图标,添加一个新的光驱。会弹出对话框,选择“保持空白” -> “确定”。
  4. 打开虚拟机,选择“设备” -> “插入Guest Additions”。这将关闭虚拟机(而不是虚拟机管理器),并重新启动虚拟机。
现在VirtualBox Guest Additions应该可以正常工作了。

1这个方法有效。但是对于我来说,我不得不手动安装客户机附加组件,因为操作系统(在我这里是Lubuntu)没有启动“autorun.sh”脚本。所以我不得不手动执行以下命令: sudo ./VBoxLinuxAdditions.run 然后它告诉我,我的系统没有设置编译客户机附加组件的内核模块。所以在再次运行脚本之前,我必须先安装它们: sudo apt install gcc make perl sudo ./VBoxLinuxAdditions.run 重启后,调整大小确实起作用了。谢谢大家! - KFleischer
1“删除附件”对我来说是禁用/无法访问的,你知道可能是为什么吗? - Lesego M
7@Les 可能是因为你的虚拟机还在运行 - Daniel Jamrozik
@Dave ... 它有效... 谢谢! - testuser
这个解决方案对我有效,不过首先我尝试将视频内存从16MB增加到128MB,所以我应该再改回16MB吗? 我只想在虚拟机上进行最小的操作。 - Abhishek Pratap Singh
终端命令"sudo apt-get install virtualbox-guest-utils"未升级客户附加组件。这个来自Dave Rose的回答已经五年了,但截至2022年1月,Vbox 6.1.32仍然适用;插入的CD脚本会进行正确的升级,并在完成后提示重新启动。 - user299967

我通过手动挂载镜像(在根据Dave Rose的回答添加设备和ISO后)并运行安装程序来解决了这个问题。
sudo su
cd /media
mkdir cdrom
mount /dev/cdrom /media/cdrom
cd cdrom
sh VBoxLinuxAdditions.run

检查一下我在SuperUser上的回答

1虽然这个链接可能回答了问题,但最好在这里包含答案的关键部分,并提供链接作为参考。仅有链接的答案如果链接页面发生变化,就会失效。- 来自审核 - slava
2不仅没有变得“更好”,也没有错,就值得被踩吗?上次(昨天)我在两个不同的问题上写了相同的答案,结果也被踩了。无论如何,我已经添加了解决方案的相关命令。 - Kamafeather
3所有其他解决方案对我都没有起作用,只有你的有效。 - Abhishek Tyagi

对我来说,解决办法是发现你必须在虚拟机设置中添加一个空的光驱!如果你试图通过预加载VBoxGuestAdditions.iso来“帮助”,它是行不通的。设备菜单上的快捷方式“插入增强功能CD映像…”需要找到一个空的光驱来使用!

3我按照类似的步骤进行了操作。通过关闭虚拟机、删除光驱并重新添加一个,我成功地重新插入了Guest Additions CD。这个方法应该被接受为答案,因为它是解决问题最用户友好的方式。而其他建议使用apt-get的回避方法只是一种权宜之计,并非真正的解决方案。 - tresf
如果您正在使用由Oracle提供的VirtualBox,那么您不应该使用apt-get方法。apt-get解决方案对于您的主机也是Ubuntu,并且您正在使用由Ubuntu提供的VirtualBox软件包来说更好一些。当主机上的VirtualBox更新时,它将确保您的客户系统运行正确版本的客户附加组件(它们同时更新客户附加组件和VirtualBox软件包,因此主机和客户端都会获得更新的软件)。 - Chai T. Rex

嗨,我之前遇到过同样的问题(复制和粘贴问题),我在终端输入了以下命令,并解决了这个问题。
- sudo apt-get upgrade - sudo apt-get install virtualbox-guest-additions-iso - 前往显示设置,然后在视频捕获下勾选启用视频捕获 - sudo apt-get install virtualbox-guest-utils - 重新启动虚拟机。

4在视频捕获下,勾选启用视频捕获 - 这几乎不可能有所帮助。不冒犯,但这可能不是一个好主意。 :-) - Max Murphy
1启用视频捕获与复制粘贴问题无关,而是与客户附加组件加载问题有关。 - Volomike
这个功能在没有捕获部分的情况下运行得很好!谢谢! - Cristiano Fontes

我遇到了同样的问题,使用sudo apt-get手动安装对我没有起作用。不同版本的Virtual Box有不同的Guest Additions版本,所以最好安装与Virtual Box一起提供的Guest Additions。所以我是这样安装的:
1. 从文件管理器中选择“设备”->“插入Guest Additions CD镜像…” 2. 登录Ubuntu 3. 卸载CD(Guest Additions CD镜像) 4. 挂载Guest Additions ISO 会弹出一个窗口询问是否运行它。如果选择运行,请输入登录密码并进行安装。 5. 重新启动Ubuntu

遇到了同样的错误,按照以下步骤解决:
1. 在Ubuntu中卸载VBOXADDITIONS CD; 2. 退出Ubuntu,点击设备 - 插入Guest Additions CD Image。这次会弹出一个窗口询问是否运行它, - 选择运行 - 输入登录密码 - 开始安装。

在VirtualBox中启动你的Ubuntu:

  1. 点击Devices -> Optical Drives -> Remove Disk from Virtual Drive
  2. 点击Devices -> 点击 ->Insert Guest Additions CD Image
  3. 输入认证信息
  4. 关闭Ubuntu并关闭VirtualBox。重新打开VirtualBox以查看其是否正常工作

还要检查共享剪贴板和双向拖放是否已勾选


在我的情况下,这是因为我正在运行没有窗口管理器的Ubuntu服务器。以下是我安装的步骤:
首先,启动Ubuntu虚拟机。然后按下“设备 > 插入增强功能光盘”。光盘已插入,但您看不到任何内容。如果您尝试再次按下“插入增强功能光盘”,您将收到错误提示。
接下来挂载光盘:
sudo mount sr0 /media/cdrom

然后cd进入目录(没有双关语):
cd /media/cdrom

接下来,运行安装脚本:
sudo ./VBoxLinuxAdditions.run

现在一切应该都好了 :)

很多时候出现的问题是你安装的ISO文件已经挂载了。只需转到设备-光驱设备-从客户机安装中删除虚拟磁盘。然后手动挂载Guestadditions.iso文件,方法是转到设备-光驱-选择磁盘映像,然后转到你安装Ubuntu的文件夹,找到guestadditions.iso文件并挂载它。一旦挂载成功,再次点击设备-安装Guest additions,输入你的Ubuntu用户ID密码,向导将继续安装Guest additions :)