I've spent years trying to figure out how to get my fan to slow down. It was alway on full speed when I started off with Red Hat in 02... apm never seemed to work for me, then when the 2.6 kernel came out, acpi would hang. Well I upgraded to 2.6.10 (using Ubuntu now) and finally acpi didn't cause my computer to hang during the boot! I was getting closer!
But I was very much annoyed by acpi because when it tries to read the cpu temperature, it tells me that it it is 4294967313.0 Kelvin, which was roughly the temperature of the universe when it was 10 seconds old.
Finally I came across a site which made some reference to the command:
echo 3 >/proc/acpi/fan/FAN1/state
When I hit enter, it automatically went quite. I took the cover of my computer to check to make sure it didn't stop all together, and sure enough, it was simply running at the correct angular speed.
The next step was to get this to happen when my system starts up. Unfortunatly I cannot find any complete description on how to write and run your own scripts at startup... so instead I just added the command to acpi-support script. Low and behold, I rebooted my machine and it was quiet!
To make sure I played with commenting this line out because I almost felt like I was going mad... I never had my linux box so quiet!