How can I deactivate Bluetooth on system startup?
18.04+ users who don't naturally have a /etc/rc.local, you'll need to create one and make it executable. To make things slightly easier, you can just paste the following command into a terminal:
sudo install -b -m 755 /dev/stdin /etc/rc.local << EOF #!/bin/sh rfkill block bluetooth exit 0 EOF
sudoedit /etc/rc.local and add this before line with
rfkill block bluetooth
You should still be able to enable Bluetooth through the top bar applet.
This should work for most systems but it looks like there are a few bugs lurking in the kernel's ACPI for Thinkpads. If you're on a Thinkpad, add the following to
echo disable > /proc/acpi/ibm/bluetooth
Or check out ibm-acpi - IBM ThinkPad ACPI Extras Driver -- some reports suggest that ibm-acpi includes bluetooth control (amongst other nice things). But I don't have the hardware so I'm completely unable to verify these claims. Good luck.
/etc/bluetooth/main.conf was enough for me.
From the article:
Search for the entry:
InitiallyPowered = true
and change the value to:
InitiallyPowered = false
It was enough for me, although the article describes some other steps that may or may not be necessary.
On Ubuntu 17.10 and Ubuntu 18.04 the option
InitiallyPowered has been replaced with
From ubuntu 16.04 onwards systemd manages startup services like bluetooth ... to view current status issue following in a terminal
sudo systemctl status bluetooth.service
to deactivate bluetooth on startup issue this
sudo systemctl disable bluetooth.service
then on next reboot bluetooth will not be active ... to enable bluetooth issue
sudo systemctl enable bluetooth.service
I think that the best way is to disable the service from being started in the first place. There is a general method for disabling services which works perfectly:
sudo sh -c "echo 'manual' > /etc/init/bluetooth.override"
That works for Ubuntu 13.10 and probably for earlier versions as well.
1. block bluetooth in rc.local
Add this line at the end of the file
/etc/rc.local right before the line
rfkill block bluetooth
This will do the trick, but only in older Ubuntu versions using upstart.
2. reenable rc.local on systemd
On Ubuntu 15.10 with systemd as startup manager the
/etc/rc.local file is not used by default any more, so call this on a terminal:
sudo systemctl edit --full rc-local
Which opens an editor. At the end of the file i added:
Those changes are activated by
sudo systemctl reenable rc-local
Now the file
/etc/rc.local is used as you know it.
3. disable blueman-applet on start
sudo sed -i 's/NoDisplay=true/NoDisplay=false/g' /etc/xdg/autostart/blueman.desktop gnome-session-properties
Now blueman-applet is visible and you can disable it from startup programs
4. Reboot to see the effect
Maybe you can turn it off in the Startup Applications. But these applications are hidden by default. Unhide the hidden Startup Applications in 12.04: Open the terminal and run these two commands:
cd /etc/xdg/autostart/ sudo sed --in-place 's/NoDisplay=true/NoDisplay=false/g' *.desktop
Now you can uncheck bluetooth. (Don't remove!)
1) Install the package smbios-utils and add it to Startup Applications with:
sudo smbios-wireless-ctl --bt 0
2) In terminal type:
and add to the end of opened file
/etc/sudoers the line:
<your username> ALL = NOPASSWD: /usr/sbin/smbios-wireless-ctl
3) To switch bluetooth on during session, run in terminal:
sudo smbios-wireless-ctl --bt 1
This works for me on my Dell D630 with Ubuntu 13.10
On Ubuntu 16.04, I simply disabled the service from starting up using systemctl.
To do this, open up a terminal window and type the following:
sudo systemctl disable bluetooth
You can either reboot since now bluetooth will be disabled from starting up, or if you do not want to reboot and want to stop bluetooth right away, you can type:
sudo service bluetooth stop
We can disable bluetooth auto start this way:
sudo gedit /etc/bluetooth/main.conf
gedit is my fav editor, you can replace this with
xed or whatever that's installed on your system.)
At the very bottom of this file, there's this line:
Un-comment it, like this:
For those of you where inserting the line
rfkill block bluetooth (or any other) in
/etc/rc.local doesn't work, try to include the same line in the end of
In my set up (Ubuntu 14.04, Thinkpad W540), no option worked inserting it in
/etc/rc.local but the former did work in bashrc. Note this will work just for the current user, not globally for all users.
If you're using the Bluetooth applet in the top panel (blueman-applet), it has its own setting that will automatically turn Bluetooth on even if you've disabled it in other places (like /etc/bluetooth/main.conf or /etc/default/tlp).
To prevent Bluetooth from turning on at startup using the command line:
gsettings set org.blueman.plugins.powermanager auto-power-on false
Or through the GUI:
- Click the Bluetooth applet > Plugins > PowerManager > Configuration
- Uncheck Auto power-on
Next time you reboot, the Bluetooth applet will still be visible but Bluetooth will be off. To turn it on:
Click the Bluetooth applet > Turn Bluetooth On
You need to disable it from the Start Up Applications list in System Settings.
Click on the cog in the top right hand side of the menu bar and then select System Settings.
Click on Start Up Applications then scroll down until you find the bluetooth setting, take the tick from the box and you all done.
protected by Community♦ Oct 15 '14 at 14:26
Thank you for your interest in this question.
Because it has attracted low-quality or spam answers that had to be removed, posting an answer now requires 10 reputation on this site (the association bonus does not count).
Would you like to answer one of these unanswered questions instead?