因为要给特殊的虚拟机关联文件指定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服务的更多相关文章

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

    由于功能需要,体验了手动编译安装Libvrt,还是碰到了不少问题,这里总结如下仅限于centos7: 1.configure: error: You must install the pciacces ...

  2. 二进制编译安装nginx并加入systemctl管理服务

    一.安装nginx所需环境 # yum install gcc-c++ pcre pcre-devel zlib zlib-devel openssl openssl-devel -y 二.安装ngi ...

  3. web服务器学习1---httpd-2.4.29源码手动编译安装

    环境准备: 系统:CentOS 7.4 软件:httpd-2.4.29 一  Apache主要特点 apache服务器在功能,性能和安全性等方面表现比较突出,可以较好地满足web服务器地应用需求.主要 ...

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

    LNAMP服务器环境搭建(手动编译安装) 一.准备材料 阿里云主机一台,操作系统CentOS 6.5 64位 lnamp.zip包(包含搭建环境所需要的所有软件) http://123.56.144. ...

  5. 手动编译安装tmux

    tmux的好处就不多说了,总之是多屏管理的神器.通常我们用系统通用的安装方式可以安装到tmux,但有时候,安装到的可能不是我们所需要的版本,又或者软件源里面没有带tmux.这个时候就需要手动编译安装了 ...

  6. CentOS手动编译安装gcc

    最近尝试了fedora.ubuntu.mint.debian.opensuse等多种linux发行版,与CentOS比较之后还是感觉之前用的CentOS比较熟悉,比较习惯.现在CentOS的最新版本为 ...

  7. Debian/Ubuntu手动编译安装MongoDB C++11驱动及驱动测试

    本文章仅限cnblogs网站内转载!请某网站自觉,遵纪守法,尊重原创! 系统环境情况: 最小化.无桌面环境 新安装的Debian 8 Server 版本操作系统虚拟机一台 手动编译安装MongoDB ...

  8. Ubuntu 18.04 手动编译安装 ffmpeg

    ffmpeg 是一个由提供对视频.音频和其他多媒体流文件进行处理功能的库和程序构成的自由软件项目,其常被用于适用于不同格式的音频和视频的录影.转换和流处理等场合.这里记录在 Ubuntu 18.04 ...

  9. fedora下手动编译安装vim

    据说手动编译安装可以更适合自己的电脑哦- 1.首先,我门要下载源文件,下载地址:ftp://ftp.vim.org/pub/vim/unix/ 选择一个最新版本,我这里选择的是 vim-7.4.tar ...

随机推荐

  1. STM32CubeMX新建工程+基本IO配置过程

    Ⅰ.写在前面 学习本文之前可以查看我前面的文章: STM32CubeMX介绍.下载与安装 STM32CubeMX使用方法及功能介绍 本文接着上一篇文章结合基本IO配置实例,讲述关于STM32CubeM ...

  2. 禁止复制 + 锁右键 + 禁止全选(兼容IE Chrome等)

    function iEsc() { return false; }function iRec() { return true; }function DisableKeys() {    if (eve ...

  3. ipmitool sdr type Temperature sdr 从传感器获取某一类数据

    1.1.1 常用监控命令总结.ipmitool sdr type Temperature 硬件监控 yum install  OpenIPMI ipmitool ipmitool sdr type T ...

  4. Centsos7修改密码

    CentOS 7.0 进入单用户模式修改Root密码 时间:2017-05-02 01:10来源:blog.csdn.net  作者:海哥_大大的Java 举报   点击:506次 一.启动时,随便按 ...

  5. 科技巨头们以 "A" 取名的时尚潮流

    科技巨头们以 "A" 取名的时尚潮流 from 公众号  WebHub  世界上有许多巨头公司喜欢以字母 a 打头作公司起名.改名,这主要是因为电话薄是以字母排序的(外国人习惯家里 ...

  6. CSS(七):浮动

    一.float属性取值:left:左浮动right:右浮动none:不浮动 先看下面的一个例子: <!DOCTYPE html> <html lang="en"& ...

  7. 【cf489】D. Unbearable Controversy of Being(暴力)

    http://codeforces.com/contest/489/problem/D 很显然,我们只需要找对于每个点能到达的深度为3的点的路径的数量,那么对于一个深度为3的点,如果有a种方式到达,那 ...

  8. JQuery获取和设置select下拉框的值

    获取Select : 获取select 选中的 text : $("#sid").find("option:selected").text(); 获取selec ...

  9. SHGetSpecialFolderPath用法

    The SHGetSpecialFolderPath function retrieves the path of a special folder that is identified by its ...

  10. hdu 1520(简单树形dp)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1520 思路:dp[u][0]表示不取u的最大价值,dp[u][1]表示取u的最大价值,于是有dp[u] ...