Yeah, I stuggled with this lots.
Different motherboards (I think) will respond differently to the default settings in linux.
on mine I had to edit /etc/lilo.conf and include
acpi=force or acpi=ht
in the append line for the kernel I was booting with.
**Don't forget to run lilo-v before rebooting!!!***
This worked fine in mandrake 10, but I had to recompile the kernel with mdk9.2 in order for the machine to turn off, and believe me that was no picnic, and I didn't get everything back up to scratch until I reinstalled mdk 10,
Short answer: try acpi=force, then if that doesn't work deal with the fact that you'll be pressing the power button until 'they' sort it out