从 VirtualBox 打印具有挑战性,因为其虚拟机中没有内置的“打印”按钮。你必须找到另一种方式来建立来宾操作系统与打印机之间的通信。
本指南说明了如何通过多种方法从 VirtualBox 打印,包括在虚拟机中使用 USB 直通 以及 VirtualBox 的原生 USB 支持,以便你可以选择最适合你配置的解决方案。
VirtualBox 原生打印机共享方法
只要安装了 VirtualBox 扩展包,VirtualBox 一直允许来宾操作系统直接与连接到主机计算机的打印机进行交互。
从 7.0 开始的 VirtualBox 版本在核心开源软件包中原生支持 USB 2.0(EHCI)和 USB 3.0(xHCI)这种支持意味着,扩展包并不总是建立来宾操作系统与本地打印机之间基本连接所必需的。
要以完整的硬件兼容性将打印机连接到 VirtualBox,可能需要 VirtualBox 扩展包。
在部署特定的 Linux 发行版或使用多功能、高性能打印机时,用户可能需要扩展包以确保连接稳定。必须安装相同版本的 VirtualBox 核心软件包和扩展包,以消除系统不兼容问题。
方法 1:USB 打印机直通
实现 VirtualBox 打印机共享最常用的方法是将 USB 端口从主机转发到虚拟机。
1. 使用 USB 电缆将打印机连接到主机电脑。
2. 打开虚拟机设置 > USB。
3. 单击“添加筛选器”图标并选择打印机。
4. 启动虚拟机并在来宾操作系统上安装打印机驱动程序。
不幸的是,这种方法经常会导致 VirtualBox USB 打印机连接不稳定。主机操作系统可能会占用打印机并拒绝虚拟机访问,从而因驱动程序冲突导致出现“设备正忙”错误。此错误是用户寻求替代解决方案的主要原因之一。
优点
- 此方法完全免费,且不需要任何额外的软件许可证。
- 在打印机与来宾操作系统之间建立了直接访问。
- 支持所有打印机功能,包括访问打印机的维护工具以清洁设备或检查墨水量。
缺点
- 主机操作系统经常会锁定对打印机的访问,并且不会将其释放给虚拟机。
- 此技术需要复杂的配置,包括设置 USB 过滤器和管理扩展包。
- 驱动程序灵敏度要求在主机和客户机系统上安装相同的驱动程序。
方法 2:网络桥接适配器
如果您的打印机具有 Wi‑Fi 或以太网端口,您可以使用这种稳定的方法。
1. 转到虚拟机设置 > 网络。
2. 将“附加到”设置为桥接适配器。
3. 在虚拟机中像在联网的独立计算机上一样搜索“网络打印机”
优点
- 该方法在建立网络连接后稳定可靠。
- 打印机同时可供主机和来宾操作系统使用。
- 桥接适配器方法可消除驱动程序冲突。
缺点
- 此方法仅适用于带有网络卡的打印机。
- 用户必须调整防火墙和网络发现设置。
- 从 NAT 切换到桥接模式可能会导致 IP 冲突以及虚拟机网络功能的问题。
方法 3:共享文件夹
如果由于主机锁定或驱动程序不兼容导致直接访问失败,共享文件夹方法是一种可靠的替代方案。在此技术中,您将要打印的文档从虚拟机移动到主机计算机。
1. 通过转到 VM 设置 > 共享文件夹启用共享文件夹,然后在 VM 与物理计算机上的某个文件夹之间创建链接。必须安装 VirtualBox Guest Additions 才能创建共享文件夹。
2. 在虚拟机内,将您的文档保存为 PDF 并将其移动到共享文件夹。
3. 从物理计算机上的共享文件夹中打开该文件并在本地打印。
优点
- 此方法完全可靠,每次都能奏效,并且兼容任何打印机。
缺点
- 您必须手动将文件另存为 PDF,并将它们移动到共享文件夹中。
- 您无法控制或查看打印机以检查墨水水平或执行维护。
常见的 VirtualBox 打印机问题
本故障排除指南可帮助您确定原生 USB 直通问题的根本原因。
| 问题 | 原因 | 解决方案 |
| “设备正忙” | 主机操作系统锁定了打印机。 | 关闭主机上的打印应用程序或使用 USB Network Gate。 |
| 未识别打印机 | 缺少驱动程序或过滤器错误 | 在来宾操作系统内安装官方驱动程序并检查 USB 过滤器。 |
| 打印性能缓慢 | 网络问题或 USB 3.0 冲突 | 检查网络信号并切换到 USB 2.0 模式。 |
| Ubuntu:USB 列表为空 | 权限被拒绝 | 运行 sudo usermod -a -G vboxusers $USER 并重启虚拟机。 |
USB Network Gate 提供了一种可靠的替代方案,可消除这些问题。
USB Network Gate:专业解决方案
USB Network Gate 是一种流行的替代方案,它通过在网络上将打印机重定向到虚拟化的 USB 端口,从而避免了原生 USB 直通方法可能出现的潜在问题。
为什么选择 USB Network Gate?
- 该软件拦截底层 USB 数据,并防止主机操作系统锁定对打印机的访问。
- 您可以通过网络连接到连接在远程主机计算机上的打印机。
- 该应用程序在虚拟机中建立一个虚拟 USB 端口,以便来宾驱动程序能够识别打印机。
- VirtualBox 与其扩展包之间不存在潜在的版本冲突。
您可以通过 USB Network Gate 三个简单步骤建立稳定的打印机连接。

1. 下载并安装 USB Network Gate,在连接打印机的物理计算机或服务器上以及 VirtualBox 客户机操作系统(称为客户端)上进行安装。
2. 在主机上启动 USB Network Gate。在 USB 设备列表中找到打印机,然后点击“共享”按钮。
3. 在您的 VirtualBox 虚拟机内打开 USB Network Gate,在“远程 USB 设备”选项卡中找到打印机,然后点击连接。
从我们的视频教程中了解更多:
优点
- 通过基于 IP 的网络启用远程打印。
- 消除“主机锁定”问题,确保虚拟机始终可以访问打印机。
- 简化的设置,无需配置 USB 过滤器或验证扩展包版本。
缺点
- 该软件必须安装在主机和来宾机器上。
- 使用该软件需要付费订阅或许可证。
Ubuntu 主机设置
在 Ubuntu 主机上设置 VirtualBox 打印机经常会因 Linux 权限限制而失败,即使设备已连接并被系统检测到。默认情况下,操作系统会限制对 USB 设备的直接访问。VirtualBox 用户必须是所需系统组的成员,否则其虚拟机将无法检测到任何 USB 打印机。
在 Ubuntu 上访问 VirtualBox USB 打印机
在 Ubuntu 和大多数基于 Debian 的 Linux 发行版上,VirtualBox 中的打印机访问需要你获得访问 USB 设备的账户权限。
修复:你必须将用户添加到 vboxusers 组。
1. 在 Ubuntu 主机上打开终端。
2. 运行以下命令:sudo usermod -a -G vboxusers $USER
3. 重启或注销后重新登录。
4. 启动 VirtualBox 并启动虚拟机。
打印机现在应会出现在虚拟机的 USB 设备列表中,并可用于 USB 直通。
