起動時に Bluetooth を有効にしようとしています (Debian)

起動時に Bluetooth を有効にしようとしています (Debian)

すでにいくつかのデバイスをペアリングして接続することに成功しています。そのためには、rfkill を使用する必要がありました。

$ sudo bluetoothctl
[bluetooth]# power on
Failed to set power on: org.bluez.Error.Blocked
[bluetooth]# exit
$ sudo rfkill unblock bluetooth
$ sudo bluetoothctl
[bluetooth]# power on
Changing power on succeeded

ただし、これは再起動すると持続しません。そこで、グーグルで検索した後、サービスを作成しようとしました。

$ sudo cat /etc/systemd/system/rfkill-unblock.service 
[Unit]
Description=RFKill-Unblock Bluetooth Devices
After=bluetooth.service
Requires=bluetooth.service

[Service]
Type=oneshot
ExecStart=/usr/sbin/rfkill unblock bluetooth
ExecStop=
RemainAfterExit=yes

[Install]
WantedBy=multi-user.target

再起動後、bluetoothctlをオンにする前に、rfkill unblock bluetoothを手動で呼び出す必要があります。以下はsystemctl statusからの出力です。

$ sudo systemctl status rfkill-unblock.service
● rfkill-unblock.service - RFKill-Unblock Bluetooth Devices
   Loaded: loaded (/etc/systemd/system/rfkill-unblock.service; enabled)
   Active: active (exited) since Wed 2015-07-15 02:26:18 UTC; 9min ago
  Process: 286 ExecStart=/usr/sbin/rfkill unblock bluetooth (code=exited, status=0/SUCCESS)
 Main PID: 286 (code=exited, status=0/SUCCESS)
   CGroup: /system.slice/rfkill-unblock.service

このマシンはメディア センターとして使用されているため、SSH を使用してこのマシンに接続していることにも注意する必要があると思います。

答え1

をインストールして設定しますurfkill。これでうまくいくようです:

# cat /etc/urfkill/urfkill.conf |grep '^[[:alpha:]]\|\['
[general]
user=root
master_key=true
force_sync=true
persist=true

関連情報