修复 Parallels Desktop 在 Big Sur 上不能联网的问题

Mar 13, 2021 • 预计阅读时间 1 分钟

Parallels Desktop 16.1.3 版本已经解决这个问题了,以下仅对之前版本有效。

在系统更新到 Big Sur 以后,Parallels Desktop 启动任何虚拟机都会提示“网络初始化失败”,进入虚拟机后无法联网。

而且,虚拟机对宿主系统的 USB 设备也无法识别。

启动时提示“网络初始化失败”

这是因为 Big Sur 对第三方内核扩展的加载做了调整,只需要对 Parallels Desktop 的内核扩展的配置文件做一下调整就可以了。

手动修改比较麻烦,写一个简单的脚本来自动化修改:

#!/usr/bin/env zsh

set -e

color_red="\\033[31m"
color_end="\\033[0m"

dispatcher_desktop_xml="/Library/Preferences/Parallels/dispatcher.desktop.xml"
network_desktop_xml="/Library/Preferences/Parallels/network.desktop.xml"

if [ -f ${dispatcher_desktop_xml} ]; then
  echo "Patching ${color_red}${dispatcher_desktop_xml}${color_end}"
  sudo sed -i '' "s/\(<Usb>\)[^<]*\(<\/Usb>\)/\11\2/" ${dispatcher_desktop_xml}
fi

if [ -f ${network_desktop_xml} ]; then
  echo "Patching ${color_red}${network_desktop_xml}${color_end}"
  sudo sed -i '' "s/\(<UseKextless>\)[^<]*\(<\/UseKextless>\)/\10\2/" ${network_desktop_xml}
fi

echo "Done."

先完全退出 Parallels Desktop,然后把以上 Shell 脚本的内容保存为 ParallelsDesktopFixer.sh ,再 chmod +x 设置为可执行,在终端下运行:

脚本运行效果

脚本运行时需要输入系统登录密码来获取 root 权限,密码输入时没有任何反馈,直接输入完成后按回车就好了。

再次启动虚拟机,就不会有初始化失败提示了,网络和 USB 都可以正常识别。

macOSParallels Desktop
版权声明:如果转发请带上本文链接和注明来源。

lvv.me

iOS/macOS Developer

zsh 快捷设置和取消代理

通过后缀名查询 MIME 类型