Manjaro禁用蓝牙功能

为什么要禁用

Manjaro默认是开启蓝牙的,照理说应该没什么问题,但是我在通过journalctl检查时发现一个错误

systemd-udevd[271]: Process '/usr/bin/set-wireless-regdom' failed with exit code 1.

通过网上检索,得知这是蓝牙导致的,于是便考虑关闭蓝牙功能

禁用方案

1. systemctl

# 首先想到的便是这个方法
systemctl status bluetooth
systemctl disable bluetooth.service

# 但是重启后发现bluetooth服务依然会启动,后来阅读文档了解到,应该使用mask来彻底禁用

# ======================= 详细说明start =======================
# 取消开机自动激活单元(只是开机的时候不自动启动,如果有其他程序调用,则会启动):
systemctl disable <单元>

# 禁用一个单元(禁用后,间接启动也是不可能的):
systemctl mask <单元>

# 取消禁用一个单元:
systemctl unmask <单元>
# ======================= 详细说明end =======================

很可惜,即使使用mask彻底禁用bluetooth.service,开机依然会报错,并且还多了两条

dbus-daemon[636]: [system] Activating via systemd: service name='org.bluez' unit='dbus-org.bluez.service' requested by ':1.110' (uid=1000 pid=>
dbus-daemon[636]: [system] Activation via systemd failed for unit 'dbus-org.bluez.service': Unit bluetooth.service is masked.

后来又发现网上说可以这样:

systemctl mask dbus-org.bluez.service

但是使用之后依然报错,当我尝试使用:

systemctl unmask dbus-org.bluez.service

进行还原时,竟然报错,提示dbus-org.bluez.service不存在

后来才发现,原来“dbus-org.bluez”只是“bluetooth.service”的一个别名,所以可以通过重新enable bluetooth.service的方法来恢复“dbus-org.bluez”

# 重新允许
systemctl enable bluetooth.service

# 在查询发现已经恢复
$ systemctl status dbus-org.bluez.service
bluetooth.service - Bluetooth service
	  Loaded: loaded (/usr/lib/systemd/system/bluetooth.service; enabled)
	  Active: active (running) since dom, 2013-01-06 03:24:53 CET; 20min ago
	Main PID: 1651 (bluetoothd)
	  CGroup: name=systemd:/system/bluetooth.service
		  └─1651 /usr/sbin/bluetoothd -n

2. gsettings

后来发现,原来xfce环境默认安装的blueman会调用bluetooth服务,所以如果可以禁用,说不定有效

gsettings set org.blueman.plugins.powermanager auto-power-on false
# 上面是命令的方式,如果想通过图形界面进行配置,也可以打开BlueMan的主窗口,然后点击View菜单,在里面选择“插件”,然后选中左侧面板的“PowerManager”插件,然后点击右侧面板的“Configuration”,然后去掉“Auto Power-on”的对勾

但是重启后发现,依然会出现最开始的错误,所以这种方法只能一开始禁用蓝牙功能,但是并不能消除报错

3. xfce4-session-settings

既然blueman设置不自动上电也无效,那么干脆直接禁用Blueman的开机项

如图所示,去掉BlueMan前面的对勾

但是后来发现,这样重启后托盘的通知消失了,甚至连“ps -ef | grep python”查出来的“python /usr/bin/blueman-applet”进程都消失了,但是一开始那个报错依然存在

猜你喜欢

转载自blog.csdn.net/ytingone/article/details/82670524
今日推荐