在 VirtualBox 中让 Debian 识别并使用 USB 设备的完整步骤
一 前置条件与权限配置
- 在宿主机(运行 VirtualBox 的系统)将当前用户加入 vboxusers 组,以便 VirtualBox 访问 USB 子系统:
- 添加用户组:sudo usermod -aG vboxusers $USER
- 退出并重新登录(或重启宿主机),使组权限生效。
- 在虚拟机内安装 VirtualBox Guest Additions(增强功能),可获得更好的设备支持与集成:
- 虚拟机菜单:设备 → 安装增强功能光盘镜像,挂载后执行:sudo sh /media/cdrom0/VBoxLinuxAdditions.run
- 安装完成后重启虚拟机。
二 在 VirtualBox 中启用 USB 并添加设备
- 关闭虚拟机,选中该虚拟机 → 设置 → USB,勾选 启用 USB 控制器,选择与设备匹配的控制器(如 USB 3.0/3.1;若设备较旧可用 USB 2.0)。
- 点击右侧 + 添加 USB 设备过滤器,建议按设备选择(而非仅填 VID/PID),这样即使设备热插拔也能自动捕获。
- 保持虚拟机设置窗口打开,将目标 USB 设备插入宿主机,在设备列表中勾选该设备以连接至虚拟机;随后启动虚拟机。
三 在 Debian 虚拟机内识别与挂载 USB 存储
- 识别设备:
- 查看设备是否被识别:lsusb
- 查看内核日志:dmesg | tail(可看到如 /dev/sdX 的分配)
- 挂载使用(以 ext4 为例,若为 FAT32/NTFS 请按需调整文件系统类型与挂载选项):
- 创建挂载点:sudo mkdir -p /media/usb
- 挂载设备:sudo mount /dev/sdX1 /media/usb
- 访问:ls /media/usb
- 安全移除:
- 卸载:sudo umount /media/usb
- 虚拟机菜单:设备 → USB → 取消勾选该设备,或在设备图标上右键选择断开/弹出。
四 常见问题与排查
- 虚拟机里看不到设备:
- 确认已勾选 启用 USB 控制器 且选择了正确的 USB 3.0/2.0;设备插入后再启动虚拟机更容易被捕获。
- 在宿主机确认设备未被占用(如未自动挂载到宿主机);必要时在 VirtualBox USB 设置中移除并重新添加过滤器。
- 权限或访问被拒:
- 宿主机确保当前用户在 vboxusers 组并已重新登录;虚拟机内对挂载点按需设置权限(如 sudo chmod 755 /media/usb)。
- 老版本或特定发行版需要额外挂载 usbfs(较少见):
- 可创建 /etc/fstab 条目:none /proc/bus/usb usbfs devgid=$(getent group usbfs | cut -d: -f3),devmode=664 0 0,然后挂载或重启;现代 Debian 通常无需此步骤。