修复 VMware Fusion 虚拟机无法访问USB设备

虚拟机装完了,3D加速也开启了,XCode也整好了,正当我打算连上iPhone大干一场的时候,我突然发现虚拟机识别不到USB设备???然后又是漫长的搜索试错,发现是vmware-usbarbitrator的锅,这个服务的作用是管理连接到虚拟机的USB设备,而启动虚拟机时它不知为何没有运行,奇奇怪怪的bug增加了,而解决方法就是为它设置开机自动运行。

在开始前,请在宿主机中打开活动监视器,搜索usb,如果没有出现vmware-usbarbitrator进程,则可以通过本文的方法解决,否则请继续排查其他可能的原因。

  1. 打开自动操作APP,这是一个系统自带的古董级软件,类似于iOS上的捷径,如果找不到就直接用聚焦搜索。
  2. 文稿类型选择应用程序
  3. 实用工具中找到运行Shell脚本,把它拖动到右侧的空白位置。
  4. 粘贴下面的命令,别忘了把你的密码四个字替换成你的开机密码,这个命令的作用就是以管理员身份运行vmware-usbarbitrator服务。
    1
    echo 你的密码 | sudo -S /Applications/VMware\ Fusion.app/Contents/Library/vmware-usbarbitrator
  5. 保存,记得保存的位置和程序名称,我起的名字是LaunchVMusbService
  6. 打开设置-通用-登陆项,将上一步创建的应用程序添加到登录时打开的程序列表中,这样开机时就会自动运行上面的shell命令,启动vmware-usbarbitrator服务。
  7. 重启mac,再次打开活动监视器,搜索usb,查看vmware-usbarbitrator进程是否已运行。
  8. 虚拟机的设置中找到USB和蓝牙选项,选择连接相关设备。
文稿类型选择应用程序
在实用工具中找到运行Shell脚本,把它拖动到右侧的空白位置,粘贴命令
打开设置-通用-登陆项,将上一步创建的应用程序添加到登录时打开的程序列表中
重启mac,再次打开活动监视器,搜索usb,查看vmware-usbarbitrator进程是否已运行