There are two problems with the RPM package for RHEL4:
1. The daemon binary expects a nicelevel to be given:
I had to add this to /etc/init.d/hudson:
NICELEVEL=0
daemon $NICELEVEL --user "$HUDSON_USER" --pidfile "$HUDSON_PID_FILE" $JAVA_CMD $PARAMS
2. Seems to use execvp:
Starting Hudson execvp: No such file or directory