Systemd Spec 宏
spec文件中这几个宏是systemd提供的一些方便使用的宏:
%post
%systemd_post xxxxxxxx.service //安装后触发%preun
%systemd_preun xxxxxxxx.service //卸载前触发%postun
%systemd_postun_with_restart xxxxxxxx.service //如果升级需要重启
%systemd_postun xxxxxxxx.service //如果升级不需要重启
宏具体细节:
#按照预设文件(*.preset)的指示,重置指定单元的启用(enable)/停用(disable)状态。%systemd_post() \if [ $1 -eq 1 ] ; then \# Initial installation \systemctl preset %{?*} >/dev/null 2>&1 || : \ #其效果等价于按照预设规则,对列出的单元依次使用 disable 或 enable 命令 fi \%{nil}
-------------------------------------------
%systemd_preun() \if [ $1 -eq 0 ] ; then \# Package removal, not upgrade \systemctl --no-reload disable %{?*} > /dev/null 2>&1 || : \ #执行disable即不开机自启动,并且不自动加载配置(.service文件),也就是不自动执行daemon-load命令。systemctl stop %{?*} > /dev/null 2>&1 || : \ fi \%{nil}
------------------------------------------
#重新加载 systemd 守护进程的配置。
%systemd_postun() \systemctl daemon-reload >/dev/null 2>&1 || : \ #重新加载所有单元文件,即.service文件 %{nil}
------------------------------------------
#重新启动(先停止再启动)指定的已启动单元。 %systemd_postun_with_restart() \systemctl daemon-reload >/dev/null 2>&1 || : \ if [ $1 -ge 1 ] ; then \# Package upgrade, not uninstall \systemctl try-restart %{?*} >/dev/null 2>&1 || : \ #注意,若指定的单元尚未启动,则不做任何操作。 fi \%{nil}
Systemd Spec 宏相关推荐
- RPM中SPEC宏定义对应路径
# rpm --showrc //查看实现代码. # rpm --eval "%{_libdir}" //查看具体对应路径. /usr/lib/usr/lib/rpm/macros ...
- linux编译时开启宏,【spec】Linux上编译安装的spec文件中的常用路径以及宏变量
我们在Linux上利用 rpmbuild 构建 rpm 安装包时,通过命令rpm --showrc 查看实现代码,另外直接通过 rpm --eval "%{macro}"来查看具体 ...
- 2018.8.9日,预习笔记,Linux软件包安装和卸载
安装软件包的三种方法 rpm包介绍 rpm工具用法 yum工具用法 yum搭建本地仓库 yum更好本地源 yum下载rpm包 源码包安装 yum保留已经安装过的包 搭建局域网yum源 把源码包打包成r ...
- 【rpm】源码包制作rpm包|修改rpm、重新制作rpm包
目录 前言 安装rpmbuild rpmbuild制作rpm 包 同时生成devel包 修改rpm.重新制作rpm包 RPM 打包 工具 SPEC文件 spec文件关键字说明大全 rpmbuild的目 ...
- RPM打包探索(rpm-max翻译整理)
1. %global 和 %define 的区别? 这是内置宏,%define用来定义宏,%global用来定义一个全局可见的宏(在整个spec文件中可见) 2. %{!?macro-name} 和 ...
- 宏基d260linux系统,Devuan GNU+Linux 2.0.0 稳定版发布,无systemd自由版本
评价该项目"Veteran UNIX Admins"已经宣布发布Devuan GNU+Linux 2.0.0,这是该项目的一个新稳定版本,该版本在2014年底派生出Debian,以 ...
- RPM包制作之Spec文件详解
看这篇文章的人基本都有一个想法,就是:"劳资不想用YUM的安装!不是版本太低就是文件分布太野路子",此时我们需要自己订制软件包的需求,我们会把一些源码包按照我们的需求来做成rpm包 ...
- linux rqm包制作 spec文件详解
看这篇文章的人基本都有一个想法,就是:"不想用YUM的安装!不是版本太低就是文件分布太野路子",此时我们需要自己订制软件包的需求,我们会把一些源码包按照我们的需求来做成rpm包,其 ...
- 6a标准 api_【阀门标准】API SPEC 6A CHINESE-2010中文版.pdf
[阀门标准]API SPEC 6A CHINESE-2010中文版 井口装置和采油树设备规范 上游段 ANSI/API Spec 6A 第 20 版,2010 年 10 月 2011 年 4 月 1 ...
- RPM安装包-Spec文件參数具体解释与演示样例分析
spec文件是整个RPM包建立过程的中心,它的作用就如同编译程序时的Makefile文件. 1.Spec文件參数 spec文件包括建立一个RPM包必需的信息,包括哪些文件是包的一部分以及它们安装在哪个 ...
最新文章
- 计算机ROM的数据可以写入吗,计算机ROM存贮器中的内容只能读出,不能写入。()
- 三、Go语言控制语句
- 深度linux怎么备份系统下载,在Deepin 20下安装和配置timeshift并用它自动备份系统...
- JEECG 智能开发平台二次开发帮助文档
- C#LeetCode刷题之#404-左叶子之和​​​​​​​​​​​​​​(Sum of Left Leaves)
- 推荐系统知识梳理——矩阵分解
- java web购物车_java web开发——购物车功能实现
- vue element ui下拉菜单和不是table列表全选功能问题解决方案
- WebService只能在本地使用,无法通过网络访问的解决办法
- css中调整高度充满_css - DIV高度怎样充满容器?
- STM32——库函数版——矩阵按键程序
- 忘了NOD32密码的解决方法
- 仿城通网盘分享下载系统源码下载,强大功能完美商用
- operands could not be broadcast together with shapes解决方案
- 百度地图高德地图谷歌地图腾讯地图商家数据采集
- 李兴平,世界站长第一人
- 物理工程建模和AI量化建模的时空跳跃
- 英语发音规则---s发/s/的读音规则
- python通过ip获取mac地址_Python3根据IP地址获取MAC地址
- jenkins 运行 jenkins-agent.jnlp 报错None of the protocols are enabled