麒麟V10 +飞腾1500A KVM安装疑难解析:从环境检查到GLIBC版本冲突

记麒麟V10 +飞腾1500A 安装kvm失败全过程 enabled;2 days ago3月 10 17:59:54 xxx libvirtd[3207515]: hostname: cnki-120-145-1893月 10 17:59:54 xxx libvirtd[3207515]: 操作失败: Cannot find CPU model with PVR 0x6603月 10 17:59:54 xxx libvirtd[3207515]: 操作失败: Cannot find CPU model with PVR 0x660。 阅读详情

1. 国产化环境下的KVM安装:一个典型的“连环坑”

最近几年,国产化替代的浪潮席卷而来,很多朋友都开始接触基于飞腾、鲲鹏这类ARM架构CPU的服务器,搭配的操作系统也换成了银河麒麟V10。我所在的团队也不例外,为了搭建一个内部的开发和测试环境,我们拿到了一台搭载飞腾FT-1500A处理器的服务器,系统是银河麒麟V10。任务很明确:在这台机器上安装KVM虚拟化平台,跑几个虚拟机。

听起来是不是和你在x86服务器上干的事儿一样?无非就是 yum install 几个包,然后 systemctl start 一下服务。我一开始也是这么想的,结果一脚踩进了一个“连环坑”里,从环境检查一路排查到GLIBC版本冲突,整个过程堪称一部国产化环境下的“疑难杂症”排查教科书。今天我就把这趟“踩坑之旅”完整地复盘一遍,尤其是那个让人头疼的 Cannot find CPU model with PVR 0x660 和 GLIBC符号未定义的问题,希望能帮你少走弯路。

为什么说这是个“连环坑”呢?因为在国产化平台上,问题往往不是孤立的。一个简单的安装失败,背后可能串联着硬件架构支持、操作系统定制、软件包版本匹配、依赖库冲突等一系列问题。你解决了A,B又冒出来,环环相扣。这次在飞腾1500A + 麒麟V10上安装KVM,就完美地诠释了这一点。接下来,我们就从最基础的环境检查开始,一步步拆解这个故障链。

2. 第一步:基础环境检查与KVM安装

动手之前,先摸清家底。这是所有运维工作的黄金法则,在陌生的国产化平台上尤其重要。

2.1 确认操作系统与CPU架构

首先,我们得知道自己到底在什么系统上干活。打开终端,输入 uname -a,这是最直接的命令。

uname -a

输出大概长这样:

Linux my-kylin-server 4.19.90-17.ky10.aarch64 #1 SMP Sun Jun 28 14:27:40 CST 2020 aarch64 aarch64 aarch64 GNU/Linux

关键信息抓取:aarch64。这说明我们用的是ARM 64位架构,不是熟悉的x86_64。系统内核版本是 4.19.90,这是麒麟V10基于某个LTS内核定制的版本。

接下来,看看这颗“中国芯”的详细信息。运行 lscpu:

lscpu

输出会非常详细,你要重点关注这几行:

架构: aarch64
厂商 ID: Phytium
型号名称: Phytium,FT-1500A

确认无误,是飞腾的FT-1500A处理器。这里有个小细节,lscpu 输出的信息里,CPU型号的标识是 FT-1500A,但后续libvirt服务报错时,寻找的CPU模型PVR(Processor Version Register)值是 0x660。这个对应关系需要记一下,后面排查CPU模型找不到的错误时,它就是关键线索。

2.2 检查虚拟化硬件支持

KVM是内核级别的虚拟化,前提是CPU硬件必须支持虚拟化扩展。对于ARM架构,这个扩展通常是KVM。检查命令和x86时代类似,但看的内容不一样:

dmesg | grep kvm

如果输出里能看到类似下面的信息,就说明内核在启动时已经识别并初始化了KVM支持:

[    0.878732] kvm [1]: 8-bit VMID
[    0.878741] kvm [1]: IPA Size Limit: 44bits
[    0.878885] kvm [1]: vgic-v2@29c20000
[    0.878894] kvm [1]: GIC system register CPU interface enabled
[    0.879121] kvm [1]: vgic interrupt IRQ1
[    0.879321] kvm [1]: Hyp mode initialized successfully

看到 Hyp mode initialized successfully 这一行,心里就踏实了一半。这说明飞腾1500A的硬件虚拟化支持是没问题的,底层基础是牢固的。如果这里什么都没有输出,那问题就大了,可能需要检查BIOS里是否开启了虚拟化支持(虽然ARM服务器BIOS设置项通常较少),或者这颗CPU是否真的支持硬件虚拟化。

2.3 安装KVM相关软件包

基础条件满足,开始安装。在麒麟V10上,我们可以使用系统自带的yum源。安装的软件包组和x86时代大同小异:

yum -y install qemu* libvirt* virt-install virt-manager

这条命令会安装QEMU(硬件模拟器)、libvirt(虚拟化管理工具栈)、virt-install(命令行创建虚拟机的工具)以及virt-manager(图形化管理工具,可选,如果服务器是纯命令行环境可以不装)。安装过程一般很顺利,依赖关系会自动解决。

安装完成后,按照惯例,我们需要启动libvirtd这个核心守护进程,并设置开机自启:

systemctl enable libvirtd
systemctl start libvirtd

坑,从这里开始出现了。 当你信心满满地执行 systemctl start libvirtd 时,很可能会看到这样的错误:

Job for libvirtd.service failed because the control process exited
飞腾1500A+麒麟V10安装KVM避坑指南:从GLIBC升级到QEMU编译全流程解析 本文详细解析了在飞腾1500A处理器与麒麟V10操作系统上部署KVM虚拟化环境的完整流程与关键避坑点。针对GLIBC版本冲突、QEMU编译适配及libvirtd服务启动失败等常见问题,提供了从底层依赖检查、源码编译到网络配置的实战解决方案,帮助用户在国产化平台上高效搭建稳定的虚拟化环境。 阅读详情

相关推荐

移植笔记:使用qemu模拟器运行Kylin FT1500A.iso

试验环境:CentOS6.5 64 1. 安装qemu 2. 运行qemu虚拟机 #qemu-img create -f qcow2 disk1.qcow 20G #qemu-system-aarch64 -m 1024M -machine virt -cpu cortex-a57 -hda disk1.cow -net nic -net user -monitor telnet:

maoji的专栏 5210

银河麒麟系统V10错误修改了fstab导致无法进入系统解决方案

找到以 linux 开头的行,添加 single 或 1 到该行末尾,然后按 Ctrl + X 或 F10 启动。最近想要修改/etc/fstab启动和磁盘挂载,由于内容填写错误导致系统无法正常启动。重启系统,在启动时按下特定的键(如 Esc、Shift 或 F12,具体取决于系统)进入GRUB菜单。如果以上步骤无法解决问题,可以尝试使用 Live USB 启动并修复 /etc/fstab 文件。在GRUB菜单中,选择正常启动的内核,然后按 e 进行编辑。进行必要的修改,确保格式正确。

爱T小毛驴的专栏 5333

飞腾aarch64交叉编译工具链配置与避坑指南

交叉编译是在x86主机上生成ARM架构可执行文件的核心技术,其原理在于通过专用工具链让编译器、链接器针对目标CPU架构生成指令。在飞腾等ARMv8平台上,工具链的sysroot、glibc版本与内核头文件必须与目标板严格对齐,否则会出现GLIBC版本不匹配、动态链接器路径错误等运行时故障。正确配置工具链不仅能提升嵌入式开发效率,更是保障软件在国产处理器上稳定运行的关键。典型应用场景包括飞腾板卡的内核、根文件系统及Qt应用构建。本文围绕飞腾aarch64交叉编译工具链的选型、验证与CMake固化配置,系统梳理

weixin_32349093的博客 142

银河麒麟桌面操作系统安装手册-FT1500A.doc

银河麒麟桌面操作系统安装手册-FT1500A.doc

【BLE】SIG-蓝牙技术联盟:会员特权与BQB认证全解析

本文全面解析了蓝牙技术联盟(SIG)的核心角色与BQB认证流程。详细阐述了SIG会员(应用会员与联盟会员)的不同特权、成本结构及法律协议,并提供了从准备到完成的BQB认证实战指南,帮助企业合规使用蓝牙技术并规划长期商业价值。

game4的博客 608

coze开发-5、给智能体添加“技能”

中间编排与技能组件 中间编排的定义 中间编排是指在智能体的构建过程中,使用一些工具对智能体进行协调和管理。通过这些工具,我们能够更好地实现智能体在特定业务场景中的应用。

andyyah晓波的博客 528

用VFP计算 CRC-16 Modbus 校验位

1. Modbus是一种串行通信协议,最初由Modicon(目前属于施耐德电气公司)于1979年开发2. Modbus协议是应用在Modicon产品上的,后来才被移植到其他产品上3. Modbus协议的通信接口可以有多种选择,如RS232、RS485、以太网等。

lddnzx的博客 519

【Hyper-V】虚拟机网络配置全解析:从端口映射到固定IP实战

本文全面解析Hyper-V虚拟机网络配置,从理解虚拟交换机三种模式(外部、内部、专用)的底层逻辑入手,指导用户创建稳定的内部/NAT网络,并详细演示如何在Linux与Windows虚拟机中配置固定IP。文章进一步深入讲解端口映射原理与netsh命令实战,以及双网卡配置和PowerShell自动化脚本等高级技巧,帮助用户彻底解决虚拟机网络“失联”问题,实现灵活可控的网络环境。

weixin_29290947的博客 269

[零基础]用docker搭建Hadoop集群

[零基础]用docker搭建Hadoop集群,每一步都有详细的解释!

weixin_56114243的博客 2万+

Android 13 灭屏音乐播放问题解决与优化建议

通过在中增加对音乐播放状态的检测,我们成功解决了客户应用在灭屏状态下音乐播放被中断的问题。

m0_60898338的博客 1157

【Unity实战篇 】| Unity实现 文本框可以自适应大小,到达最大宽度之后再缩小字体

Unity实现 Text文本框可以自适应大小,到达最大宽度之后再缩小字体 需求:在文本框可以自适应大小拉伸的前提下,增加一个最大限制宽度,使其到达最大宽度后 再启用 Best Fit 实现自适应改变文字大小以适应文本框的大小。 在Unity中经常会用到文本组件的自适应大小功能,一般使用HorizontalLayoutGroup和ContentSizeFitter组件配合即可实现文本自适应的效果。

努力前行,总会成为自己心中的那道光 3万+

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

上一篇: 从Audio2Face到MetaHuman:USD工作流实现高精度面部动画
下一篇: 无人机集群通信网络动态拓扑重构:战场环境下的关键技术挑战与解决方案
seed
博客等级 码龄26年 87粉丝 1548原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值