I have a Debian GNU / Linux squeeze with bluetooth and bluetooth is started automatically on system boot. This is pretty annoying, cause I use bluetooth quite rarely.
disable / enable bluetooth via terminal is controlled via Linux sysfs virtual filesystem. The command to disable bluetooth one time is:
debian:~# echo 0 > /sys/devices/platform/thinkpad_acpi/bluetooth_enable
It is efficient in terms of energy saving especially if you use often your notebook on battery to turn off bluetooth permanently and only enable it when needed with:
debian:~# echo 1 > /sys/devices/platform/thinkpad_acpi/bluetooth_enable
To permanently disable bluetooth on Linux boot use:
# service bluetooth stop
In /etc/rc.local before exit 0 line place:
echo 0 > /sys/devices/platform/thinkpad_acpi/bluetooth_enable
An alternative method to permanently disable bluetooth (on other non-Thinkpad – any brand laptops) is via rfkill (bluetooth device control interface), on Ubuntu rfkill is installed by default but Debian users has to explicitly install it via apt:
debian:~# apt-get install –yes rfkill
Once rfkill is installed on host put a line before exit 0 in /etc/local:
rfkill block bluetooth