Oli*_*Oli 237
对于此 ubuntu 编辑/etc/bluetooth/main.conf
并找到该行
AutoEnable=true
Run Code Online (Sandbox Code Playgroud)
并将其替换为:
AutoEnable=false
Run Code Online (Sandbox Code Playgroud)
18.04* 自然没有 /etc/rc.local 的用户,您需要创建一个并使其可执行。为了让事情变得更简单,您可以将以下命令粘贴到终端中:
sudo install -b -m 755 /dev/stdin /etc/rc.local << EOF
#!/bin/sh
rfkill block bluetooth
exit 0
EOF
Run Code Online (Sandbox Code Playgroud)
运行sudoedit /etc/rc.local
并在行前添加exit 0
:
rfkill block bluetooth
Run Code Online (Sandbox Code Playgroud)
您应该仍然可以通过顶部栏小程序启用蓝牙。
这应该适用于大多数系统,但看起来在 Thinkpad 内核的 ACPI 中潜伏着一些错误。如果您使用的是 Thinkpad,请将以下内容添加到/etc/rc.local
:
echo disable > /proc/acpi/ibm/bluetooth
Run Code Online (Sandbox Code Playgroud)
或者查看ibm-acpi - IBM ThinkPad ACPI Extras Driver - 一些报告表明 ibm-acpi 包括蓝牙控制(以及其他好东西)。但我没有硬件,所以我完全无法验证这些说法。祝你好运。
小智 169
我找到了如何做一个干净的“解决办法”在这里(存档链接为后人)
其实改变/etc/bluetooth/main.conf
对我来说已经足够了。
搜索条目:
AutoEnable=true
Run Code Online (Sandbox Code Playgroud)
并将值更改为:
AutoEnable=false
Run Code Online (Sandbox Code Playgroud)
这对我来说已经足够了,尽管这篇文章描述了一些可能需要也可能不需要的其他步骤。
在Ubuntu 17.04及更早版本上,该选项名为InitiallyPowered
.
Sco*_*and 51
从 ubuntu 16.04 开始,systemd 管理蓝牙等启动服务......以在终端中查看当前状态问题
sudo systemctl status bluetooth.service
Run Code Online (Sandbox Code Playgroud)
在启动问题时停用蓝牙
sudo systemctl disable bluetooth.service
Run Code Online (Sandbox Code Playgroud)
然后在下次重新启动时蓝牙将不会处于活动状态...启用蓝牙问题(然后重新启动)
sudo systemctl enable bluetooth.service
Run Code Online (Sandbox Code Playgroud)
mac*_*aco 29
要禁用蓝牙驱动程序在启动时加载:
sudo $EDITOR /etc/modprobe.d/blacklist.conf
Run Code Online (Sandbox Code Playgroud)
添加:
blacklist btusb
Run Code Online (Sandbox Code Playgroud)
稍后启用它应该只是:
sudo modprobe btusb
Run Code Online (Sandbox Code Playgroud)
小智 18
步骤1:转到终端并输入以下命令来编辑系统/etc/rc.local
文件:
gksudo gedit /etc/rc.local
Run Code Online (Sandbox Code Playgroud)
第 2 步:在该行之前添加以下exit 0
行:
rfkill block bluetooth
Run Code Online (Sandbox Code Playgroud)
bma*_*pin 14
注意:这些说明适用于希望在启动时默认禁用蓝牙的用户,以便之后可以轻松启用。
在 Gnome 中,蓝牙由 gnome-bluetooth 管理,它应该记住您上次使用的设置。但是你可以强制它在启动时总是被禁用,如下所示:
echo "rfkill block bluetooth" >> ~/.profile
Run Code Online (Sandbox Code Playgroud)
(如果您使用的是 zsh,请将 ~/.profile 替换为 ~/.zprofile)
这避免了必须编辑任何系统文件,例如 /etc/rc.local
每当您准备好打开它时,单击右上角 >设置>蓝牙> 单击右上角附近的开关
或者使用命令行:
rfkill unblock bluetooth
Run Code Online (Sandbox Code Playgroud)
如果您在顶部面板 (blueman-applet) 中使用蓝牙小程序,它有自己的设置,即使您在其他地方(如 /etc/bluetooth/main.conf 或/etc/default/tlp)。
使用命令行防止蓝牙在启动时打开:
gsettings set org.blueman.plugins.powermanager auto-power-on false
Run Code Online (Sandbox Code Playgroud)
或通过 GUI:
下次重新启动时,蓝牙小程序仍然可见,但蓝牙将关闭。
单击蓝牙小程序 >打开蓝牙
rub*_*o77 10
在文件末尾/etc/rc.local
的行之前添加这一行exit 0
:
rfkill block bluetooth
Run Code Online (Sandbox Code Playgroud)
这可以解决问题,但仅限于使用upstart 的旧版 Ubuntu 版本。
在使用systemd作为启动管理器的Ubuntu 15.10 上/etc/rc.local
,默认情况下不再使用该文件,因此在终端上调用它:
sudo systemctl edit --full rc-local
Run Code Online (Sandbox Code Playgroud)
这将打开一个编辑器。在文件的末尾我添加了:
[Install]
WantedBy=multi-user.target
Run Code Online (Sandbox Code Playgroud)
这些变化是由
sudo systemctl reenable rc-local
Run Code Online (Sandbox Code Playgroud)
现在该文件/etc/rc.local
已按您所知使用。
sudo sed -i 's/NoDisplay=true/NoDisplay=false/g' /etc/xdg/autostart/blueman.desktop
gnome-session-properties
Run Code Online (Sandbox Code Playgroud)
现在 blueman-applet 可见,您可以从启动程序中禁用它
我找到了另一个使用 tlp 的答案,它在 Ubuntu 18.04 上非常适合我。可能首先必须安装 tlp
sudo apt install tlp
Run Code Online (Sandbox Code Playgroud)
然后文件
/etc/default/tlp
Run Code Online (Sandbox Code Playgroud)
包含有关 wifi 和蓝牙等设备的一些设置。有钥匙
RESTORE_DEVICE_STATE_ON_STARTUP
Run Code Online (Sandbox Code Playgroud)
默认设置为 0。在我将其切换为 1 后,我的上次设置会在下次启动时被记住。这意味着当我在顶部面板中禁用蓝牙时,它会保持禁用状态,而当我启用蓝牙时,它会保持启用状态。还有关键
DEVICES_TO_DISABLE_ON_STARTUP
Run Code Online (Sandbox Code Playgroud)
可以设置为
DEVICES_TO_DISABLE_ON_STARTUP="bluetooth"
Run Code Online (Sandbox Code Playgroud)
现在蓝牙将在每次启动时禁用。更改此配置后,可以通过菜单和面板项启用和禁用蓝牙。我认为这比从内核模块中删除它更好。
在终端中键入以下内容:
sudo gedit /etc/modprobe.d/blacklist.conf
Run Code Online (Sandbox Code Playgroud)
在文件底部,添加以下行:
blacklist bluetooth
Run Code Online (Sandbox Code Playgroud)
保存文件并重新启动 - 现在应该禁用蓝牙。
我加
"/etc/init.d/bluetooth stop"
Run Code Online (Sandbox Code Playgroud)
进入
"/etc/rc.local"
Run Code Online (Sandbox Code Playgroud)
在“退出 0”命令以关闭蓝牙启动之前。
小智 5
我认为最好的方法是首先禁用该服务。有一种禁用服务的通用方法,可以完美运行:
sudo sh -c "echo 'manual' > /etc/init/bluetooth.override"
Run Code Online (Sandbox Code Playgroud)
这适用于 Ubuntu 13.10,也可能适用于早期版本。
归档时间: |
|
查看次数: |
340174 次 |
最近记录: |