Главная страница » Как исправить «Устройство Bluetooth не подключается автоматически» в Linux

Как исправить «Устройство Bluetooth не подключается автоматически» в Linux

Автор: Евгений Стерликов

Если вы какое-то время используете Linux, вы знаете, что Bluetooth и Linux несовместимы. Какова бы ни была причина, всегда сложно подключить устройства Bluetooth к вашей системе Linux. Недавно, когда мне  обновиться до Ubuntu 20.04 , я начал замечать, что устройства Bluetooth не просто автоматически подключаются к моей системе. Я много копал и вот способы исправить «Устройство Bluetooth не подключается автоматически в Ubuntu».

Исправить «Устройство Bluetooth не подключается автоматически» в Ubuntu

Универсального решения этой проблемы не существует, и ваша проблема может отличаться от моей. Например, мои Bluetooth-наушники автоматически подключаются обратно к моей системе Ubuntu, как только я включаю ее. Но в следующую секунду он снова отключается, и мне приходится каждый раз подключать его вручную.

Итак, какое бы устройство Bluetooth ни было, вот пошаговое решение. Оставьте комментарий и дайте мне знать, какое из них подойдет вам.

Шаг 1. Автовключение

Прежде всего, вам необходимо убедиться, что у вас есть работающий модуль Bluetooth и он включен. Как только мы разберемся с этим, нам нужно проверить, включено ли AutoEnable. Автоматическое включение гарантирует, что модуль Bluetooth будет включаться после каждого перезапуска. Кроме того, если вы подключаете USB-устройство или модуль Bluetooth, функция AutoEnable гарантирует, что его можно будет запустить без перезагрузки.

Чтобы убедиться, что AutoEnable включен, нам нужно покопаться в файле конфигурации Bluetooth. Для этого используйте следующую команду.

sudo nano /etc/bluetooth/main.conf

судо-нано-блютуз

В файле конфигурации Bluetooth перейдите вниз. Если вы видите строку с текстом «AutoEnable=true», все в порядке. Если вы этого не сделаете, AutoEnable отключен. Следовательно, нам придется добавить следующую строку в конец файла.

AutoEnable=true

Этот шаг не так важен для аудиоустройства Bluetooth, но может решить проблему автоматического подключения Bluetooth-мыши, веб-камеры или клавиатуры.

авто-включение-bluetooth.conf

Читать:  Как исправить AirPods, не работающие в Ubuntu

Шаг 2. Доверенное устройство

Если описанный выше метод не помог решить проблему, возможно, причина в том, что Ubuntu не доверяет устройству Bluetooth. Это приводит к сбою аутентификации при попытке устройства автоматически подключиться. Чтобы убедиться, что вашему устройству Bluetooth доверяют, нам необходимо добавить его в список доверенных.

Для этого нам в первую очередь понадобится MAC-адрес устройства Bluetooth. Чтобы получить MAC-адрес, вам необходимо подключить устройство Bluetooth к системе или хотя бы сделать его доступным для обнаружения. Затем перейдите на верхнюю панель и щелкните значок батареи. В расширенном раскрывающемся меню нажмите значок Bluetooth, а затем Настройки Bluetooth.

Bluetooth-настройки-Bluetooth

В настройках Bluetooth найдите имя вашего устройства Bluetooth и нажмите на него. Во всплывающем меню вы получите MAC-адрес устройства.

MAC-адрес устройства Bluetooth

Как только мы получим MAC-адрес устройства, нажмите «Alt+Ctrl+T», чтобы открыть терминал. На терминале введите следующую команду и нажмите Enter.

bluetoothctl trust mac_address

Bluetoothctl-доверительное устройство

Чтобы убедиться, что устройство добавлено в список доверенных, нажмите следующую команду.

sudo bluetoothctl info mac_address

Bluetoothctl-информационное устройство

Теперь попробуйте перезапустить службу Bluetooth, устройство должно автоматически подключиться.

Шаг 3. Восстановите соединение Bluetooth-устройства

Если что-то не получится, попробуйте удалить устройство Bluetooth и снова подключить его. Иногда Ubuntu может ошибочно определить тип или класс устройства Bluetooth. Например, он может принять класс устройства наушников в качестве клавиатуры Bluetooth. Эту проблему можно решить повторным сопряжением. Вы можете сделать это через графический интерфейс, удалив устройство, но если вы такой же клавиатурный ниндзя, как я, ниже приведена команда.

bluetoothctl remove mac_address

Bluetoothctl-удалить-устройство

Переведите наушники в режим сопряжения и выполните следующую команду

bluetoothctl connect mac_address

Bluetoothctl-подключение-устройство

После этого перезапустите Bluetooth и проверьте, подключается ли устройство автоматически.

Шаг 4. Переустановите Bluetooth

Это крайняя мера, если что-то не получится. Переустановка может решить проблемы с Bluetooth и другими драйверами. БлюЗ — это официальный стек Bluetooth для Linux. Чтобы переустановить Bluetooth, нам нужно переустановить пакет BlueZ. Для этого используйте следующую команду.

sudo apt reinstall bluez

переустановить-bluez-пакет

Прочитано: Как удалить приложение в Ubuntu

После переустановки Bluez включите и запустите службу Bluetooth с помощью следующей команды.

sudo systemctl enable bluetooth.service
sudo systemctl start bluetooth.service

включить и запустить службу Bluetooth

Это может помочь вам исправить автоматическое переподключение устройства Bluetooth. В случае, если это не позволяет перейти к следующему шагу.

Шаг 5. Скрипт

Если описанные выше шаги вам не помогли, мы находимся в той же ситуации. Когда я собирался вообще отказаться от этой статьи, я наткнулся на скрипт Python на GitHub под названием Bluetooth-автоподключение . Это скрипт Python, который автоматически подключается ко всем сопряженным и доверенным устройствам Bluetooth. Однако сценарий недоступен для установки непосредственно в репозиторий Flatpak или Apt. Следовательно, нам необходимо вручную загрузить и настроить службу.

Прежде всего загрузите zip-файл с GitHub или используйте следующую команду, чтобы клонировать репозиторий в свой домашний каталог.

git clone https://github.com/jrouleau/bluetooth-autoconnect.git

Теперь, когда у нас есть загруженный репозиторий, нам нужно переместить службу и сценарии в соответствующее место, прежде чем запустить службу. В моем случае я использую архитектуру systemd, поэтому упомянутые места назначения файлов применимы к таким дистрибутивам, как ArchLinux, Ubuntu, Debian и т. д. Если вы используете дистрибутивы, отличные от systemd, пожалуйста, поищите в Google каталоги своих сервисов.

sudo cp bluetooth-autoconnect/bluetooth-autoconnect.service /etc/systemd/system/
sudo cp '/home/pratik/bluetooth-autoconnect/bluetooth-autoconnect' /usr/bin/

копирование пользовательских служб в каталоги

После того как мы успешно скопировали службу в соответствующие каталоги, давайте включим и запустим службу. Для этого используйте следующую команду.

sudo systemctl enable bluetooth-autoconnect.service
sudo systemctl start bluetooth-autoconnect.service

запуск-Bluetooth-автоподключение-сервис

Теперь, когда служба запущена, она попытается повторно подключиться к каждому сопряженному и доверенному устройству Bluetooth. Единственное предостережение в отношении этого метода заключается в том, что вы не сможете подключить свое устройство Bluetooth к другим системам, не отключив Bluetooth на своем компьютере с Linux. Поскольку устройство всегда будет пытаться подключиться к вашему устройству Bluetooth.

Посетите Bluetooth-автоподключение GitHub

Заключительные слова

Эта статья провела меня через десятки форумов и статей в Интернете. Я попробовал сценарии udev для PulseAudio и Bluez Manager, но ни один из них не смог выполнить автоматическое подключение. Поэтому я исключил их из этой статьи. В моем путешествии по Linux-системам, помимо отсутствия хороших профессиональных приложений, второй по значимости проблемой был Bluetooth. Я так и не смог прийти к выводу, проблема ли это в драйвере производителя или в чем-то, что Linux еще не разобрался.

Поделитесь своим опытом в комментариях, и мы вместе найдём решение.

Читайте также: 7 лучших приложений-эквалайзеров для Android для каждого любителя музыки

Возможно вам будет интересно