一、前置准备
安装VirtualBox Extension Pack
扩展包是VirtualBox支持USB 2.0/3.0设备的必要组件。访问VirtualBox官方网站下载与当前VirtualBox版本匹配的扩展包(如“All platforms”版本),通过命令行安装:
sudo VBoxManage extpack install /path/to/Oracle_VM_VirtualBox_Extension_Pack-*.vbox-extpack
安装完成后,VirtualBox会支持USB控制器配置。
配置用户权限
默认情况下,普通用户无权访问VirtualBox的USB设备。需将当前用户添加到vboxusers组(不影响原有用户组权限):
sudo usermod -aG vboxusers $(whoami)
执行后必须重新登录(或重启系统),使组权限生效。
二、配置虚拟机USB设置
打开虚拟机设置
启动VirtualBox管理器,选中目标CentOS虚拟机,点击顶部菜单栏的“设置”。
启用USB控制器
在设置窗口中选择“USB”选项卡,勾选“启用USB控制器”,并根据USB设备版本选择控制器类型:
添加USB设备过滤器(可选但推荐)
点击“USB”选项卡右侧的“添加USB设备过滤器”图标(带“+”号的USB插头),在弹出的设备列表中选择需要自动连接的USB设备(如“SanDisk Cruzer Blade”)。配置后,虚拟机启动时会自动连接该设备,无需手动操作。
三、启动虚拟机并连接USB设备
启动虚拟机
在VirtualBox管理器中选中目标虚拟机,点击“启动”进入CentOS系统。
手动连接USB设备(若未配置过滤器)
虚拟机启动后,在VirtualBox窗口底部工具栏找到“USB”图标(带USB插头的设备形状),点击下拉箭头,选择需要连接的USB设备。若设备已配置过滤器,会自动连接。
验证USB设备识别
在CentOS虚拟机中打开终端,输入以下命令查看USB设备列表:
lsusb
若看到类似以下输出(包含USB设备的Vendor ID和Product ID),说明设备已成功识别:
Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
(注:实际输出会根据连接的设备不同而变化)
四、常见问题排查
无法识别USB设备
vboxusers组(groups命令查看);权限不足导致无法挂载
若需手动挂载USB设备(如U盘),需确保当前用户对挂载点有权限。可创建挂载点并挂载:
sudo mkdir -p /mnt/usb # 创建挂载点
sudo mount /dev/sdb1 /mnt/usb # 替换/dev/sdb1为实际设备名(通过lsblk查看)
挂载后,可通过cd /mnt/usb访问设备内容。