seems like your ps is not standards redhat. "ps -u postgres" works
fine for me on RH60 and RH61. This could easily affect the way your
init script works - the functions us ps in part to get pid values.
I'd run the stop repeatedly until you always get a 'failed' trying to
stop the db. Then run the start.
I've got a suspician that inittab may not ne synced and init is still
restarting the postmaster on you. I'm not sure, but it may be worth
double or triple checking.
Good luck
Karl