鲲鹏社区首页
中文
注册
我要评分
文档获取效率
文档正确性
内容完整性
文档易理解
在线提单
论坛求助

如何打开virt-manager图形化

问题现象描述

启动Vitual Machine Manager时提示“Error polling connection 'qemu:///system': internal error: Socket 6378 can't be handled (max socket is 4095)”。

关键过程、根本原因分析

libvirt-4.5.0代码bug导致的问题。

结论、解决方案及效果

升级libvirt版本至libvirt-4.7.0以上,或者修改libvirt-4.5.0源码后重新编译。本节以升级libvirt版本至libvirt-5.6.0为例。

  1. 安装edk2。
    • 在线安装
      wget https://www.kraxel.org/repos/firmware.repo -O /etc/yum.repos.d/firmware.repo
      yum -y install edk2.git-aarch64

    • 离线安装
      1. 在可以访问外网的环境下,通过https://www.kraxel.org/repos/jenkins/edk2/获取RPM包并拷贝至目标服务器系统的相应位置。
      2. 执行如下命令离线安装edk2。
        rpm -ivh edk2.git-aarch64*.rpm

  2. 安装依赖包。
    yum -y install yum-utils rpm-build
  3. 下载源码RPM包。
    wget https://libvirt.org/sources/libvirt-5.6.0-1.fc30.src.rpm

    本章以libvirt-5.6.0为例,此bug在libvirt-4.7.0版本已解决

  4. 编译安装。
    1. 安装src.rpm源码包。
      rpm -i libvirt-5.6.0-1.fc30.src.rpm
    2. 生成RPM包。
      cd /root/rpmbuild/SPECS/
      yum-builddep -y libvirt.spec
      rpmbuild -ba libvirt.spec
    3. 安装RPM包。
      cd /root/rpmbuild/RPMS/aarch64/
      yum -y install *.rpm
    4. 修改配置文件。
      1. 打开qemu.conf文件。
        vim /etc/libvirt/qemu.conf

        按“i”进入编辑模式,找到修改位置,如下图所示:

      2. 在nvram字段的下面添加如下配置信息。
        nvram = ["/usr/share/edk2.git/aarch64/QEMU_EFI-pflash.raw:/usr/share/edk2.git/aarch64/vars-template-pflash.raw"]

      3. :wq,保存并退出。
    5. 重启libvirtd服务。
      systemctl daemon-reload
      systemctl restart libvirtd
    6. 关闭SELinux。
      setenforce 0