[Debian-ha-maintainers] pacemaker-heartbeat package bug / ommissoin
Chris Moules
christopher at gms.lu
Thu Jun 4 12:44:21 UTC 2009
Hello,
I have just installed the pacemaker-heartbeat package from:
deb http://people.debian.org/~madkiss/ha lenny main
on a 2.6.26-2-amd64 Lenny system.
After removing my previous self-build installation from a few months ago, I restored my config files:
/etc/ha.d/ha.cf
/etc/ha.d/authkeys
and issued a:
/etc/init.d/heartbeat start
Shortly after this my first machine rebooted with the message:
EMERG: Rebooting system. Reason: /usr/lib/heartbeat/cib
Changing "crm yes" to "crm respawn" in the ha.cf allowed me a little time for debugging. I found that the package had not
created the "/var/run/crm" directory at all.
After creating this and fixing the permissions I was able to have a running heartbeat setup.
I was sure that I did not do this manually when I initially installed myself. I went back to my source that I have built the
Debian packages from (tip.tar.bz2 => Pacemaker-1-0-47b44d35b52e) and looked in the 'debian' folder to see if "/var/run/crm" was
mentioned. It was, in the following files:
grep "var/run/crm" *
Makefile:CRM_STATE_DIR = /var/run/crm
pacemaker.dirs:var/run/crm
pacemaker.postinst: for i in /var/run/crm /var/lib/pengine; do
I assumed that this is an oversight in the packaging. I extracted the deb that I had downloaded and examined that. In the
'postinst' script there it lists "/var/run/heartbeat/crm" in place of "/var/run/crm".
After downloading the source from:
http://people.debian.org/~madkiss/ha
I extracted and patched the source. (pacemaker_1.0.4+hg20090604-1~bpo50+1.diff.gz pacemaker_1.0.4+hg20090604.orig.tar.gz)
Looking at the result did not tell me much...
Pacemaker-1-0-2cac8ba04082/debian# grep "var/run/crm" *
pacemaker.dirs:var/run/crm
pacemaker.postinst: for i in /var/run/crm /var/lib/pengine; do
Pacemaker-1-0-2cac8ba04082/debian# grep CRM_STATE_DIR *
Pacemaker-1-0-2cac8ba04082/debian# grep "var/run/heartbeat/crm" *
changelog: * Make postinst no longer bail out if /var/run/heartbeat/crm and / or
pacemaker-heartbeat.postinst: for i in /var/run/heartbeat/crm /var/lib/heartbeat/crm \
pacemaker-openais.postinst: for i in /var/run/heartbeat/crm /var/lib/heartbeat/crm \
I guess that 'CRM_STATE_DIR' is not set and the package is now 'pacemaker-heartbeat' means that the "var/run/heartbeat/crm"
location is created but not used by the binaries.
Regards
Chris
More information about the Debian-ha-maintainers
mailing list