手动编译安装Libvirt之后利用systemctl管理libvirtd服务

因为要给特殊的虚拟机关联文件指定selinux标签,而默认的Libvirt没有这个功能,所以需要修改LIbvirt源代码,重新编译安装Libvirt,而手动编译安装的LIbvirt,没有办法使用systemctl管理libvirtd服务,只能通过libvirtd -d的方式手动启动。然而,手动启动的Libvirtd服务并不符合开发规范,所以只能手动把libvirtd.service添加到systemctl管理。



这就要详解下systemctl管理程序了

一、systemctl介绍

systemctl 是一个systemd工具,主要负责控制systemd系统和服务管理器,而Systemd是一个系统管理守护进程、工具和库的集合,用于取代System V初始进程,当前redhat系列的Linux发行版都是采用这种方式。Systemd的功能是用于集中管理和配置类UNIX系统。而我们要通过systemctl管理服务原因之一也是想让系统进程启动我们的服务,这在标签机制中涉及到标签的继承问题,这里不在深入。

二、通过systemctl管理服务

通过systemctl管理服务简单高效,本来还是想深入分析写勒,但是突然发现一个大牛的博客,这里我就不画蛇添足了,需要的可以参考:

http://www.ruanyifeng.com/blog/2016/03/systemd-tutorial-commands.html

重点写下通过systemctl管理libvirtd的具体步骤:

1、systemctl管理的每个单元都有一个文件与之对应,以sshd服务来讲,对应的就是sshd.service,存在于/usr/lib/systemd/system/文件夹下,而在/etc/systemd/system/文件夹下有该文件的软连接,表明这是自动启动的。为了简便,我是从别处通过rpm包安装的libvirt机器上拷贝其libvirtd.service文件到本机的/etc/systemd/system/文件夹下。

文件内容如图所示:

其中的大部分内容不需要改动,就是下面的文件的路径需要改,因为手动编译安装的libvirt安装路径在/usr/local/sbin/libvirtd

另外需要注意的是上面Unit单元里面after表示该服务以来上面的服务,这里libvirt-guest.service在手动编译安装的版本里面没有,需要我们自行安装,其具体作用不详。没有libvirt-client.service,libvirt仍然可以正常工作可以看出这个并不影响Libvirt基本功能,其所作的应该是管理类的工作。没有libvirt-client.service通过systemctl 没办法正常管理libvirtd.service

2、复制配置文件/etc/sysconfig/libvirtd文件到本机同等目录

3、安装libvirt-client

yum install libvirt-client

4、执行函数重新载入

systemctl damon-reload

5、测试

systemctl status libvirtd.service

systemctl start libvirtd.service

systemctl restart libvirtd.service

systemctl enable libvirtd.service

查看状态:

时间: 2024-12-26 07:51:32

手动编译安装Libvirt之后利用systemctl管理libvirtd服务的相关文章

centos7手动编译安装Libvirt常见问题

由于功能需要,体验了手动编译安装Libvrt,还是碰到了不少问题,这里总结如下仅限于centos7: 1.configure: error: You must install the pciaccess module to build with udev 解决方案:yum install libpciaccess-devel.x86_64 2.configure: error: You must install device-mapper-devel/libdevmapper >= 1.0.0

OpenStack之安装kvm+编译安装libvirt+解决遇到的问题

http://libvirt.org/sources/ 下载libvirt进行编译安装 1.简单编译安装libvirt [email protected]:/tool#tar -xf libvirt-1.3.4.tar.gz [email protected]:/tool# cd libvirt-1.3.4 [email protected]:/tool/libvirt-1.3.4# Ubuntu缺省情况下,没有提供C/C++的编译环境,所以还需手动安装如下包[email protected]:

LNAMP服务器环境搭建(手动编译安装)

LNAMP服务器环境搭建(手动编译安装) 一.准备材料 阿里云主机一台,操作系统CentOS 6.5 64位 lnamp.zip包(包含搭建环境所需要的所有软件) http://123.56.144.36:8001/tools/lnamp.zip 二.确认环境 #确认CentOS YUM安装使用正常 yum clean all yum makecache #确认c gc gc-c++安装正常 yum install -y gc gcc gcc-c++ #确认安装环境需要的软件 yum insta

手动编译安装软件

1.手动编译安装 a.提供开发库和开发工具 yum -y install "Development Tools" "Development Libraries" b.安装GCC编译器 yum -y install gcc* c.通过wget命令下载网上的包 wget http://tengine.taobao.org/download/tengine-2.0.2.tar.gz d.用tar命令解压 tar xf tengine-2.0.2.tar.gz e.进入到t

linux 下手动编译安装无线网卡驱动

//先参照 <本地yum源安装GCC >安装好gcc hp的笔记本上安装了CentOS6.3,没有安装无线网卡驱动,安装这个驱动,在Google上找了好多资料,最后终于解决了这个问题.在这里做点记录,希望也能帮到别人. 我的机子是32位,CentOS的内核版本是2.6.32-279.19.1.el6.i686,下载的无线网卡驱动是hybrid-portsrc_x86_32-v5_100_82_112.tar.gz 下面是具体的步骤 一:确定无线网卡的型号,驱动下载 第一步要确定机子的无线网卡型

Ubuntu 18.04 手动编译安装 ffmpeg

ffmpeg 是一个由提供对视频.音频和其他多媒体流文件进行处理功能的库和程序构成的自由软件项目,其常被用于适用于不同格式的音频和视频的录影.转换和流处理等场合.这里记录在 Ubuntu 18.04 平台下安装 ffmpeg 的过程.( 注:ffmpeg 目前已经可以通过 apt 直接进行安装,见最后 ) 安装过程 a.在 ffmpeg 官网上下载对应的安装压缩包,笔者使用的是 ffmpeg-4.1.tar.bz2 ,将其解压至用户主目录下. tar -xvjf ffmpeg-4.1.tar.b

利用chkconfig 管理启动服务及脚本一个坑点

利用chkconfig 管理启动服务及脚本一个坑点 在启动脚本头部: #!/bin/bash #chkconfig:  2345 63 90 #description: this is a example 彩色部分是chkconfig管理的要点,必须写入,同时绿色部分代表所引用的运行级别,×××代表启动顺序,越小越靠前[00-99],蓝色部分代表关闭顺序,越小越靠前[00-99],我为了不影响,用了一个100,报错了,所以是个坑点,网络上也没有相关说明.是自己试出来的. 其实启动就相当于开机自动

超详细LAMP环境手动编译安装实例

LAMP编译安装实例: HTTPD编译安装: 下载软件包:     # wget http://mirrors.hust.edu.cn/apache//apr/apr-1.6.3.tar.gz http://mirrors.hust.edu.cn/apache//apr/apr-util-1.5.1.tar.gz http://mirrors.shu.edu.cn/apache//httpd/httpd-2.4.29.tar.gz 需要依赖最新版apr和apr-util apr:Apache P

Centos7手动编译安装apache

现在很多人搭建web环境选择了一键脚本或可视化管理面板,因此我认为在使用一键脚本之前,一定要自己搭建一次, 生产环境的话,炸了都不知道怎么快速解决可就太难受了,另外就是安全性问题,这个不多谈,总之能不用就不用吧 最近手边有台小内存VPS,手动搭个apache做下载站吧 编译安装需要gcc套件 yum install -y gcc gcc-c++ 安装完成就会提示这个! 编译安装Apr 官网最新版下载页面:http://apache.communilink.net/apr/ 找到开头是apr,ta