安装rpm后重新启动systemctl守护程序

时间:2019-07-10 23:14:47

标签: rpm systemd

我用nfpm创建了一个RPM。当RPM安装在OEL 7.x系统上时,需要我重新加载单元文件,然后才能启动服务。

systemctl daemon-reload

我该如何允许RPM重新加载,以便可以启动该服务,并在重新启动时启用该服务?

由于这可能是特定于nfpm config(YAML)的,所以我也不介意本机RPM规范文件的视角。

谢谢。

1 个答案:

答案 0 :(得分:1)

您可以将其放在%post部分:

%post
systemctl daemon-reload

我们正在努力,以下是我在卸载软件包时发现的一些好的做法:

%preun
if [ $1 == 0 ]; then #uninstall
  systemctl unmask %{name}.service
  systemctl stop %{name}.service
  systemctl disable %{name}.service
fi

%postun
if [ $1 == 0 ]; then #uninstall
  systemctl daemon-reload
  systemctl reset-failed
fi