使用新的rsyslog.d文件创建Debian软件包/重新启动rsyslog

时间:2015-03-17 20:45:01

标签: debian packaging post-install

我有一个放在/etc/init.d/中的文件package.init。拥有此文件并使用" dpkg-buildpackage -us -uc" dh_installinit创建postinst文件

#!/bin/sh
set -e
# Automatically added by dh_installinit
if [ -x "/etc/init.d/package" ] || [ -e "/etc/init/package.conf" ]; then
        if [ ! -e "/etc/init/package.conf" ]; then
                update-rc.d package defaults >/dev/null
        fi
        invoke-rc.d package start || exit $?
fi
# End automatically added section

另外,我有一个rsyslogd文件需要放在/etc/rsyslog.d中。我设法将新文件放在目录中,但是对于rsyslogd来获取新配置需要重新启动。所以,我想到了创建postinst文件

service rsyslog restart

如果我添加此文件,那么前一个postinst文件将被完全覆盖,并且它包含的所有内容都是" service rsyslog restart"

我试图避免手动编辑postinst。我跳的是我的postinst文件的内容会附加到dh_installinit创建的内容中,但事实并非如此。

这是我的问题: 如何将其他规则附加到由dh_installinit创建的postinst。

1 个答案:

答案 0 :(得分:2)

如果您使用debhelper,则只需在维护者脚本中包含#DEBHELPER#语句。它(并且只有它)将由生成的内容自动替换。

有关此内容的更多信息,请参见dh_installdeb man page