手动编译安装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-guests
yum install libvirt-guests
4、执行函数重新载入
systemctl damon-reload
5、测试
systemctl status libvirtd.service

systemctl start libvirtd.service

systemctl restart libvirtd.service

systemctl enable libvirtd.service

查看状态:

手动编译安装Libvirt之后利用systemctl管理libvirtd服务的更多相关文章
- centos7手动编译安装Libvirt常见问题
由于功能需要,体验了手动编译安装Libvrt,还是碰到了不少问题,这里总结如下仅限于centos7: 1.configure: error: You must install the pciacces ...
- 二进制编译安装nginx并加入systemctl管理服务
一.安装nginx所需环境 # yum install gcc-c++ pcre pcre-devel zlib zlib-devel openssl openssl-devel -y 二.安装ngi ...
- web服务器学习1---httpd-2.4.29源码手动编译安装
环境准备: 系统:CentOS 7.4 软件:httpd-2.4.29 一 Apache主要特点 apache服务器在功能,性能和安全性等方面表现比较突出,可以较好地满足web服务器地应用需求.主要 ...
- LNAMP服务器环境搭建(手动编译安装)
LNAMP服务器环境搭建(手动编译安装) 一.准备材料 阿里云主机一台,操作系统CentOS 6.5 64位 lnamp.zip包(包含搭建环境所需要的所有软件) http://123.56.144. ...
- 手动编译安装tmux
tmux的好处就不多说了,总之是多屏管理的神器.通常我们用系统通用的安装方式可以安装到tmux,但有时候,安装到的可能不是我们所需要的版本,又或者软件源里面没有带tmux.这个时候就需要手动编译安装了 ...
- CentOS手动编译安装gcc
最近尝试了fedora.ubuntu.mint.debian.opensuse等多种linux发行版,与CentOS比较之后还是感觉之前用的CentOS比较熟悉,比较习惯.现在CentOS的最新版本为 ...
- Debian/Ubuntu手动编译安装MongoDB C++11驱动及驱动测试
本文章仅限cnblogs网站内转载!请某网站自觉,遵纪守法,尊重原创! 系统环境情况: 最小化.无桌面环境 新安装的Debian 8 Server 版本操作系统虚拟机一台 手动编译安装MongoDB ...
- Ubuntu 18.04 手动编译安装 ffmpeg
ffmpeg 是一个由提供对视频.音频和其他多媒体流文件进行处理功能的库和程序构成的自由软件项目,其常被用于适用于不同格式的音频和视频的录影.转换和流处理等场合.这里记录在 Ubuntu 18.04 ...
- fedora下手动编译安装vim
据说手动编译安装可以更适合自己的电脑哦- 1.首先,我门要下载源文件,下载地址:ftp://ftp.vim.org/pub/vim/unix/ 选择一个最新版本,我这里选择的是 vim-7.4.tar ...
随机推荐
- 基于HTML5 Canvas 实现的 Loading 效果
Sonic.js 是一个很小的 JavaScript 类,用于创建基于 HTML5 画布的加载图像.更强大的是 Sonic.js 还提供了基于现成的例子的创建工具,可以帮助你实现更多自定义的(Load ...
- C语言 · 约数个数
算法提高 约数个数 时间限制:1.0s 内存限制:512.0MB 输入一个正整数N,输出其约数的个数. 样例输入 12 样例输出 6 样例说明 12的约数包括:1,2,3,4,6,1 ...
- C#中利用JQuery实现视频网站的缩略图采集
最近有朋友想要采集优酷的视频标题和缩略图 (哈哈, 并非商业目的). 找到我帮忙, 考虑到有我刚刚发布的SpiderStudio, 我毫不犹豫的答应了. 首先在网页上视频的基本结构为: div.v - ...
- STUN协议简析
http://blog.csdn.net/mazidao2008/article/details/4934257 ——————————————————————————————————————————— ...
- 关于Unity的C#基础学习(四)
一.数组 存放同种类型的一组数据,同类+多个 1.定义 int [] int_set; int_set=new int[10]; //在堆上分配出10个int,int_set是数组的引用变量,指向1 ...
- Servlet中Request的getAttribute getParameter 区别
1.从更深的层次考虑,request.getParameter()方法传递的数据,会从Web客户端传到Web服务器端,代表HTTP请求数据. request.getParameter()方法返回Str ...
- Web前端开发中的MCRV模式(转)
作者: izujian 来源: baiduux 摘要:针对前端开发中基于ajax的复杂页面开发所面临的代码规模大,难以组织和维护,代码复用性.扩展性和适应性差等问题,本文尝试以MVC思想为 基础,结 ...
- 快速开发 jQuery 插件的 10 大技巧(转)
1. 把你的代码全部放在闭包里面 这是我用的最多的一条.但是有时候在闭包外面的方法会不能调用.不过你的插件的代码只为你自己的插件服务,所以不存在这个问题,你可以把所有的代码都放在闭包里面.而方法可能应 ...
- 小结:hash
概要: 判重的时候可以用手写hash,也可以用stl中的map,手写hash的好处是快,解决冲突的方案较好,map慢.但是手写hash要求的空间高,而且有时处理得不好的话会wa. 注意及技巧: 注意的 ...
- hdu 1181:变形课(搜索水题)
变形课 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/65536 K (Java/Others)Total Submis ...