parallels安装centos7无法进入桌面环境

问题现象

parallels desktop安装centos7虚拟机,最初完全正常,因某些原因升级centos7内核至5.9.0,之后无法进入桌面环境,始终停留在启动日志界面,现象如下图。
parallels安装centos7无法进入桌面环境

降级内核至3.10,重装parallels desktop及parallels tools均无效。

排查步骤

  1. 通过Alt + F2(option+F2)可切换终端界面以命令行方式进入系统
    parallels安装centos7无法进入桌面环境

  2. 尝试手动启动图形界面,执行命令startx,确认无法启动,日志写入红框中所示文件;
    parallels安装centos7无法进入桌面环境

  3. 查看日志文件同时过滤错误信息,cat /var/log/Xorg.0.log|grep EE;
    parallels安装centos7无法进入桌面环境

  4. 日志显示libglx.so这个文件为32位版本,64位系统当然无法使用,查看这个文件,发现符号链接至同目录下libglx.so.16.0.1.48919,正好与我安装的paralles desktop版本号相同。查看该文件,确实是32位版本,应该是安装paralles tools时存在bug。
    parallels安装centos7无法进入桌面环境
    parallels安装centos7无法进入桌面环境

  5. 看来图形界面无法启动的原因就是这个了,因我的环境之前折腾过于复杂,不确定该bug是本版本parallels desktop必现还是因我的环境导致;

解决方案

  1. 进入parallels desktop目录下,寻找prl-tools-lin.iso文件。路径为:
    /Applications/Parallels Desktop.app/Contents/Resources/Tools。

  2. 用解压软件解压至某一目录,根据虚拟机的xorg版本(执行startx时红框有标出)查找对应libglx.so文件;
    /prl-tools-lin解压目录/tools/tools64(32位为tools32)/xorg(选择对应的版本)/usr/lib
    parallels安装centos7无法进入桌面环境

  3. 替换对应版本下的libglx.so.1.0.0至虚拟机中/usr/lib64/xorg/modules/extensions/目录下,重命名为原错误版本的文件名。
    parallels安装centos7无法进入桌面环境

  4. 重新执行startx,正常启动图形界面。重启虚拟机测试,正常进入桌面环境。问题解决。
    parallels安装centos7无法进入桌面环境