我有一个bash脚本,我想在apache启动或重新启动之前执行。将bash脚本附加到apache start
我希望我的bash脚本在启动过程中启动apache时以及手动运行“/etc/init.d/apache2 restart/start”时执行。
有一个init.d脚本“/etc/init.d/apache2”,但我宁愿不碰那个文件。
谷歌是不是非常有帮助:)
我有一个bash脚本,我想在apache启动或重新启动之前执行。将bash脚本附加到apache start
我希望我的bash脚本在启动过程中启动apache时以及手动运行“/etc/init.d/apache2 restart/start”时执行。
有一个init.d脚本“/etc/init.d/apache2”,但我宁愿不碰那个文件。
谷歌是不是非常有帮助:)
的因为/etc/init.d/apache2
写,你不能把你的脚本提前apache2ctl
在PATH
并修改或重新命名/usr/sbin/apache2ctl
会更容易得到劫持的方式在更新期间撤消。因此,您可以选择修改/etc/init.d/apache2
或魔术。
这可能是因为魔术的形式是通过适当的前缀在适当的/etc/rc?.d
目录中为您的脚本创建符号链接,这会导致它在Apache之前运行。例如,在我的系统中,名称可能是S88scriptname
。您可以为每个运行级别单独创建这些链接并手动管理它们,或者在支持它的系统(如Debian和Ubuntu)上,可以在/etc/init.d/skeleton
之后为脚本建模,并适当设置LSB header中的选项(尤其是X-Start-Before
关键字)使用update-rc.d
来管理符号链接rc?.d
。
老实说,更改“/etc/init.d/apache2”正是我要采取的方法。你为什么不想碰那个文件? – 2010-10-26 17:53:34
@Ben Lee:我的推理是Apache更新可能会覆盖该文件。 – koen 2010-10-26 18:01:41