我有几个我自己构建的自定义.debs。它们都依赖于apache,并且在升级任何软件包后需要重新启动apache。
从postinst中天真地重新启动apache我为每个升级的程序包重新启动,这非常慢。有谁知道是否有一个避免这种情况的好方法? Dpkg触发器似乎是正确的方法,但我似乎找不到文档的方式。 apache是否定义了自己的激活触发器。如果是这样,我该怎么称呼它?
答案 0 :(得分:1)
是的,dpkg触发器在这里是正确的方法。不,我不相信有任何预先存在的触发器可以为你解决这个问题。
最简单的说,您的设置可能包含以下内容:
DEBIAN/triggers
文件应包含interest apache-coordination-reload
之类的行。postinst
应该处理使用参数" triggered
"来调用它的情况。和#34; apache-coordination-reload
"在第二个参数中的某个位置,通过执行实际的apache重新加载或重新启动(理想情况下通过invoke-rc.d
或类似的东西,以便运行级别得到尊重)。apache-coordination-reload
触发器。这可以通过为包含DEBIAN/triggers
。activate apache-coordination-reload
个文件来完成