我在 Windows 10 上安装了 VirtualBox 6.1.36,我用它来运行两台虚拟机,一台使用 Xubuntu 18.04,另一台使用 Xubuntu 22.04。“自动调整访客显示大小”适用于两者,但复制和粘贴仅适用于第一个,所以我正在考虑重新安装访客添加,但我意识到我什至不明白安装了什么版本。
手册说
要查看当前安装的扩展包,请启动 VirtualBox Manager,如第 1.6 节 “启动 Oracle VM VirtualBox”所示。从文件菜单中,选择首选项。在显示的窗口中,转到扩展类别。这将向您显示当前安装的扩展,并使您能够删除包或添加新包。
如果我这样做,我会看到 6.1.36r152435,这确实是我认为我安装的,也是我想要的。
但是在 Ask Ubuntu 上也有一个答案,解释了如何检查正在使用的版本:
打开 Session Information 窗口(使用 Machine->Session Information 或Host- N)
选择 Runtime Information 选项卡。
查看 Guest Additions 版本号。
一位用户评论说,这个答案表明正在运行什么,而不仅仅是安装了什么,所以这应该是检查它的最佳方法。我无法判断这是不是真的。
无论如何,如果我用这种方法检查我的两台虚拟机,我发现一台有 5.2.8_KernelUbuntu r120774,而另一台有 6.0.0 r127566。所以它们是不同的,并且都不对应第一种方法指示的版本。
现在:
- 来宾添加是否绑定到 Virtualbox(因此只有一个版本,无论运行多少虚拟机)还是绑定到每个虚拟机?
- 什么版本的来宾添加真正在运行?
好吧,很容易对此感到困惑。
扩展是完全不同的东西。它是一个使用附加功能扩展 VirtualBox 的接口。这是关于主机及其虚拟化功能的。存在扩展的主要原因是将 VirtualBox 的开源部分与其专有组件分离,如 USB 2.0 和 3.0 支持(这些是作为非免费扩展提供的,仅对非商业用途无偿提供)。
您的主机很可能安装了 Guest Additions ISO。主机不运行 Guest Additions 软件(显然,因为它不是来宾),但您可以在其上安装 ISO。可以将该 ISO 加载到虚拟 CD 驱动器中,以在来宾 VM 上安装来宾添加。
在 Windows 上,ISO 是默认安装的,所以它总是与安装的 VortualBox 的版本相同。在 Linux 上,它有一个额外的包,可能没有安装,但如果是,它通常也会匹配 VirtualBox。也可以按需下载——如果新版本的 VirtualBox 尚不存在,它会询问您是否要这样做。
来宾可以运行任何版本的 Additions,它不一定要与主机匹配,尽管不匹配会导致某些功能无法正常工作。AskUbuntu 上描述的方法是检查当前正在运行的版本的正确方法。
通常有两种安装 Guest Additions 的方法:从 ISO(使用菜单选项)或作为来自操作系统存储库的包。我通常会推荐前者,因为它几乎可以保证与您在主机上运行的版本相匹配,但是如果您有打包版本并且工作正常,那么修复没有损坏的东西就没有意义了。