我需要在升级之前禁用 RHEL 中的服务。停止它并不能解决问题,因为它使用了 stanza respawn
,这导致它在我停止后立即启动。该方法在https://askubuntu.com/questions/19320/how-to-enable-or-disable-services也就是说,.override
我的 upstart 版本不支持使用文件(0.6.7,我无法升级)。
我想到在停止服务之前注释掉该respawn
节,并在升级完成后删除注释。还有其他/更好的想法吗?
答案1
作为在 upstart 升级到.override
支持文件的 1.3 之前的解决方法,可以注释掉该respawn
节。它也可以自动化,例如作为 rpm 脚本的一部分,使用以下sed
命令:
# to disable:
sed -i -e 's/^respawn/#respawn/' /etc/init/my_svc.conf
# to enable:
sed -i -e 's/#respawn/respawn/' /etc/init/my_svc.conf