CentOS9源码编译libvirtd工具
卸载原有版本libvirt
[root@centos9 ~]# yum remove libvirt
Centos9配置网络源
[root@centos9 ~]# dnf config-manager --set-enabled crb
[root@centos9 ~]# dnf install epel-release epel-next-release
安装依赖包
[root@centos9 ~]# yum install -y libtirpc-devel libxml2-devel glib2-devel python3-docutils rpcgen gnutls-devel libpciaccess-devel yajl-devel device-mapper-devel meson
[root@centos9 ~]# meson configure --includedir /usr/include/tirpc/rpc/
libtirpc的rpc.h在/usr/include/tirpc/rpc/rpc.h,必须要手动告诉meson其目录位置,不然后面ninja -C build的时候会报错:rpc/rpc.h:没有那个文件或目录。
重新下载源码、编译安装
[root@centos9 ~]# wget http://libvirt.org/sources/ libvirt-9.0.0.tar.xz
[root@centos9 ~]# tar -xvf libvirt-9.0.0.tar.xz
[root@centos9 ~]# cd libvirt-9.0.0
[root@centos9 libvirt-9.0.0]# mkdir build && cd build
[root@centos9 build]# meson build
• # build & install libvirt to your home directory
• $ meson build --prefix=$HOME/usr
[root@centos9 build]# ninja -C build
[root@centos9 build]# ninja -C build install
然后查看一下版本是不是更新了
[root@centos9 ~]# libvirtd --version
libvirtd (libvirt) 9.0.0
[root@centos9 ~]# virsh --version
9.0.0
安装完成检查。
[root@centos9 ~]# cd libvirt-9.0.0/build/src/
[root@centos9 src]# systemctl status libvirtd
[root@centos9 src]# cp *.service /etc/systemd/system/
[root@centos9 src]# cp *socket /etc/systemd/system/
[root@centos9 src]# systemctl daemon-reload
[root@centos9 src]# systemctl restart libvirtd
[root@centos9 src]# systemctl enable libvirtd
[root@centos9 src]# systemctl status libvirtd
运行virsh命令查看机器上的虚拟机列表,提示未能连接到hypervisor
[root@localhost ~]# virsh list --all
error: failed to connect to the hypervisor
error: Failed to connect socket to ‘/usr/local/var/run/libvirt/libvirt-sock’: No such file or directory
出现这一情况的原因可能是没有开启libvirtd服务,用下面的命令查看是否开启
[root@localhost ~]# ps -le | grep libvirtd
显示libvirtd服务并没有开启,所以手动开启一下
[root@localhost ~]# libvirtd -d
现在再看一下,libvirtd服务已经启动了
[root@localhost ~]# ps -le | grep libvirtd
1 S 0 7171 1 23 80 0 - 143264 poll_s ? 00:00:00 libvirtd
验证virsh命令此时就已经可用了
[root@localhost ~]# virsh list --all
编译后没有 vir-install 命令
yum install virt-install virt-manager virt-viewer virt-top
systemd 无法启动
libvirtd.service 存在于 /usr/lib/systemd/system/ 文件夹下,而在 /etc/systemd/system/ 文件夹下有该文件的软连接,表明这是自动启动的。
尝试启动该服务时会报错,因为其中指定环境变量有问题,其中的大部分内容不需要改动,就是下面的文件的路径需要改,因为手动编译安装的 libvirt 安装路径在 /usr/local/sbin/libvirtd 或是 /usr/sbin/libvirtd ,修改以下两处:
[Service]
…
EnvironmentFile=/etc/sysconfig/libvirtd
ExecStart=/usr/sbin/libvirtd $LIBVIRTD_ARGS
…
需根据您系统中实际位置查找到对应位置,如果按照本文建议流程则路径同上,否则需自行查找,之后再次尝试启动即可,有可能需要重新加载一下服务。
systemctl daemon-reload
systemctl reload libvirtd
systemctl start libvirtd
即可启动成功。
virt-manager 启动提示 virt qemu-sock no such file or directory
检查后应该是 virtqemud 服务没起来导致的,编译安装默认生成的服务路径在 /usr/local/* 下,而我们指定了安装在默认位置 /usr ,参考 systemd 无法启动的解决方法即可解决该问题。
首先看一下 /usr/sbin/virtqemud 这个文件是存在的,下面继续操作,首先使能该服务。
$ systemctl enable virtqemud
创建了改服务的软连接,宣告自启,此时服务配置有问题,直接修改该软连接指定的文件
vim /usr/local/lib/systemd/system/virtqemud.service
#类比 libvirtd 的修改这两行,指定正确服务位置
[Service]
…
EnvironmentFile=-/etc/sysconfig/virtqemud
ExecStart=/usr/sbin/virtqemud $VIRTQEMUD_ARGS
之后重新加载服务,再启动
systemctl daemon-reload
systemctl reload virtqemud
systemctl start virtqemud
不出意外的话就能启动了
报错1:
ERROR internal error: process exited while connecting to monitor: Cannot set up guest memory ‘pc.ram’: Cannot allocate memory
解决办法:
#vim /etc/libvirt/qemu.conf
user = “root” # 该项去星号
group = “root” # 该项去星号
#这个问题是你的虚拟机的内存有点小,虚拟机的内存小的同时还再来带一台机器,肯定带不起来所以会报错。
#刚开始我设置的内存是24G(出错),后来设置成16G(出错),后来设置成10G(也出错了),后来设置成2G能起来了
#后来我把VMware的内存调到32G后就能正常的创建4G内存的虚机了
报错2:
错误:将插槽连接到 ‘/var/run/libvirt/libvirt-sock’ 失败: 没有那个文件或目录
解决办法:
systemctl status libvirtd 查看该服务状态
systemctl start libvirtd 启动该服务
systemctl enable libvirtd 开机自启动
报错3:
错误:将插槽连接到 ‘/var/run/libvirt/virtqemud-sock’ 失败: 没有那个文件或目录
[root@centos9 ~]# find / -name ‘virtqemud-sock’
/var/local/run/libvirt/virtqemud-sock
需要创建一个软连接
[root@centos9 ~]# ln -s /var/local/run/libvirt/virtqemud-sock /var/run/libvirt/virtqemud-sock
该报错就算创建软连接,只在当前会话有效,重启后libvirtd服务也是dead状态,软连接也不存在了,该问题还未查找到原因。
相关文章:
CentOS9源码编译libvirtd工具
卸载原有版本libvirt [rootcentos9 ~]# yum remove libvirt Centos9配置网络源 [rootcentos9 ~]# dnf config-manager --set-enabled crb [rootcentos9 ~]# dnf install epel-release epel-next-release 安装依赖包 [rootcentos9 ~]# yum install -y libtirpc-devel libxml2-de…...
搭建内网穿透
文章目录摘要npsfrp服务提供商摘要 内网穿透是一种方便的技术,可以让用户随时随地访问内网设备。有两种方式可以使用内网穿透:自己搭建,使用nps/frps软件;购买服务,快速享受内网穿透带来的便利。 nps 内网穿透。参考…...

vue3组件库项目学习笔记(八):Git 使用总结
目前组件库的开发已经接近尾声,因为这次是使用 git 进行协作的开发模式,在团队协作的时候遇到很多的问题,开发过程中发现小伙伴们对于 git 的使用还不是很熟练,这里就简单总结一下常用的 git 的操作,大致有:…...

ISO7320FCQDRQ1数字隔离器LMG1025QDEETQ1半桥GaN驱动器
1、数字隔离器 DGTL ISO 3000VRMS 2CH 8SOIC型号:ISO7320FCQDRQ1批次:新技术:容性耦合类型:通用隔离式电源:无通道数:2输入 - 侧 1/侧 2:2/0通道类型:单向电压 - 隔离:30…...

openmmlab 语义分割算法基础
本文是openmmlab AI实战营的第六次课程的笔记,以下是我比较关注的部分。简要介绍语义分割:如下图,左边原图,右边语义分割图,对每个像数进行分类应用语义分割在个各种场景下都非常重要,特别是在自动驾驶和医…...

2023年深圳/东莞/惠州CPDA数据分析师认证报名入口
CPDA数据分析师认证是中国大数据领域有一定权威度的中高端人才认证,它不仅是中国较早大数据专业技术人才认证、更是中国大数据时代先行者,具有广泛的社会认知度和权威性。 无论是地方政府引进人才、公务员报考、各大企业选聘人才,还是招投标加…...
RabbitMQ-客户端源码之AMQChannel
AMQChannel是一个抽象类,是ChannelN的父类。其中包含唯一的抽象方法: /*** Protected API - called by nextCommand to check possibly handle an incoming Command before it is returned to the caller of nextCommand. If this method* returns true…...

注意力机制(SE,ECA,CBAM) Pytorch代码
注意力机制1 SENet2 ECANet3 CBAM3.1 通道注意力3.2 空间注意力3.3 CBAM4 展示网络层具体信息1 SENet SE注意力机制(Squeeze-and-Excitation Networks):是一种通道类型的注意力机制,就是在通道维度上增加注意力机制,主要内容是是…...

Vue2笔记03 脚手架(项目结构),常用属性配置,ToDoList(本地存储,组件通信)
Vue脚手架 vue-cli 向下兼容可以选择较高版本 初始化 全局安装脚手架 npm install -g vue/cli 创建项目:切换到项目所在目录 vue create xxx 按照指引选择vue版本 创建成功 根据指引依次输入上面指令即可运行项目 也可使用vue ui在界面上完成创建&…...

Java程序的执行顺序、简述对线程池的理解
点个关注,必回关 文章目录一、Java程序是如何执行的二、合理利用线程池能够带来三个好处一、Java程序是如何执行的 我们日常的工作中都使用开发工具(IntelliJ IDEA 或 Eclipse 等)可以很方便的调试程序,或者是通 过打包工具把项目…...

【前言】嵌入式系统简介
随手拍拍💁♂️📷 日期: 2022.12.01 地点: 杭州 介绍: 2022.11.30下午两点时,杭州下了一场特别大的雪。隔天的12月路过食堂时,边上的井盖上发现了这个小雪人。此时边上的雪已经融化殆尽,只有这个雪人依旧维持着原状⛄…...

React设计原理—1框架原理
阅读前须知 本文是笔者学习卡颂的《React设计原理》的读书笔记,对书中有价值内容以Q&A方式进行呈现,同时结合了自己的理解🤔阅读时推荐先看问题,想想自己的答案,再和答案比对一下本文属于前端框架科普,…...

(C00034)基于Springboot+html前后端分离技术的宿舍管理系统-有文档
基于Springboothtml技术的宿舍管理系统-有文档项目简介项目获取开发环境项目技术运行截图项目简介 基于Springboothtml的前后端分离技术的宿舍管理系统项目为了方便对学生宿舍进行管理而设计,分为后勤、宿管、学生三种用户,后勤对整体宿舍进行管理、宿管…...

Flink面试题
一 基础篇Flink的执行图有哪几种?分别有什么作用Flink中的执行图一般是可以分为四类,按照生成顺序分别为:StreamGraph-> JobGraph-> ExecutionGraph->物理执行图。1)StreamGraph顾名思义,这里代表的是我们编写…...

Python学习笔记
前言:又从仓库翻出来了一些以前总结的文档,以下内容是我初学Python时网上找的或是图书馆借书抄写的笔记,现在再看有点零散不成体系,但是也还是纪念一下子吧。 Python学习笔记 对于初学编程的人来说,Python可以缩短编…...

最适合入门的100个深度学习实战项目
🚨注意🚨:最近经粉丝反馈,发现有些订阅者将此专栏内容进行二次售卖,特在此声明,本专栏内容仅供学习,不得以任何方式进行售卖,未经作者许可不得对本专栏内容行使发表权、署名权、修改…...

AssertionError: 618 columns passed, passed data had 508 columns【已解决】
问题描述 程序中断,报错如下AssertionError: 618 columns passed, passed data had 508 columns Exception has occurred: ValueError 618 columns passed, passed data had 508 columns AssertionError: 618 columns passed, passed data had 508 columnsThe abo…...

166_技巧_Power BI 窗口函数处理连续发生业务问题
166_技巧_Power BI 窗口函数处理连续发生业务问题 一、背景 在生产经营的数据监控中,会有一类指标需要监控是否连续发生,从而根据其在设定区间中的连续频次来评价业务。 例如: 员工连续迟到天数。销售金额连续上升或者下降。用户连续登陆…...

电子科技大学人工智能期末复习笔记(五):机器学习
目录 前言 监督学习 vs 无监督学习 回归 vs 分类 Regression vs Classification 训练集 vs 测试集 vs 验证集 泛化和过拟合 Generalization & Overfitting 线性分类器 Linear Classifiers 激活函数 - 概率决策 ⚠线性回归 决策树 Decision Trees 决策树构建递归…...

使用DDD指导业务设计的总结思考
领域驱动设计(DDD) 是 Eric Evans 提出的一种软件设计方法和思想,主要解决业务系统的设计和建模。DDD 有大量难以理解的概念,尤其是翻译的原因,某些词汇非常生涩,例如:模型、限界上下文、聚合、…...

未来机器人的大脑:如何用神经网络模拟器实现更智能的决策?
编辑:陈萍萍的公主一点人工一点智能 未来机器人的大脑:如何用神经网络模拟器实现更智能的决策?RWM通过双自回归机制有效解决了复合误差、部分可观测性和随机动力学等关键挑战,在不依赖领域特定归纳偏见的条件下实现了卓越的预测准…...

BCS 2025|百度副总裁陈洋:智能体在安全领域的应用实践
6月5日,2025全球数字经济大会数字安全主论坛暨北京网络安全大会在国家会议中心隆重开幕。百度副总裁陈洋受邀出席,并作《智能体在安全领域的应用实践》主题演讲,分享了在智能体在安全领域的突破性实践。他指出,百度通过将安全能力…...

Ascend NPU上适配Step-Audio模型
1 概述 1.1 简述 Step-Audio 是业界首个集语音理解与生成控制一体化的产品级开源实时语音对话系统,支持多语言对话(如 中文,英文,日语),语音情感(如 开心,悲伤)&#x…...

ios苹果系统,js 滑动屏幕、锚定无效
现象:window.addEventListener监听touch无效,划不动屏幕,但是代码逻辑都有执行到。 scrollIntoView也无效。 原因:这是因为 iOS 的触摸事件处理机制和 touch-action: none 的设置有关。ios有太多得交互动作,从而会影响…...
大学生职业发展与就业创业指导教学评价
这里是引用 作为软工2203/2204班的学生,我们非常感谢您在《大学生职业发展与就业创业指导》课程中的悉心教导。这门课程对我们即将面临实习和就业的工科学生来说至关重要,而您认真负责的教学态度,让课程的每一部分都充满了实用价值。 尤其让我…...
QT3D学习笔记——圆台、圆锥
类名作用Qt3DWindow3D渲染窗口容器QEntity场景中的实体(对象或容器)QCamera控制观察视角QPointLight点光源QConeMesh圆锥几何网格QTransform控制实体的位置/旋转/缩放QPhongMaterialPhong光照材质(定义颜色、反光等)QFirstPersonC…...
【SSH疑难排查】轻松解决新版OpenSSH连接旧服务器的“no matching...“系列算法协商失败问题
【SSH疑难排查】轻松解决新版OpenSSH连接旧服务器的"no matching..."系列算法协商失败问题 摘要: 近期,在使用较新版本的OpenSSH客户端连接老旧SSH服务器时,会遇到 "no matching key exchange method found", "n…...

Git 3天2K星标:Datawhale 的 Happy-LLM 项目介绍(附教程)
引言 在人工智能飞速发展的今天,大语言模型(Large Language Models, LLMs)已成为技术领域的焦点。从智能写作到代码生成,LLM 的应用场景不断扩展,深刻改变了我们的工作和生活方式。然而,理解这些模型的内部…...

Linux部署私有文件管理系统MinIO
最近需要用到一个文件管理服务,但是又不想花钱,所以就想着自己搭建一个,刚好我们用的一个开源框架已经集成了MinIO,所以就选了这个 我这边对文件服务性能要求不是太高,单机版就可以 安装非常简单,几个命令就…...
手动给中文分词和 直接用神经网络RNN做有什么区别
手动分词和基于神经网络(如 RNN)的自动分词在原理、实现方式和效果上有显著差异,以下是核心对比: 1. 实现原理对比 对比维度手动分词(规则 / 词典驱动)神经网络 RNN 分词(数据驱动)…...