Проблема с bluetooth на Mac OS X

На маке вдруг иногда, но всегда очень некстати, умирает "синий зуб". То есть, он вроде как включен, но при этом не работает ни одно внешнее устройство подключенное по bluetooth. В том числе пропадает мышь, а это уже совсем не удобно. Спасает перезагрузка, но, когда открыто много приложений, то перезагружать комп и потом долго возвращаться к прежнему рабочему состоянию очень неприятно. С этой проблемой боролся ещё мой дед, а совет, который вы прочтёте здесь, пригодится, похоже, вашим внукам, потому как Apple уже несколько лет не может решить проблему.

Задача сводится к тому, чтобы перезапустить bluetooth без перезагрузки компьютера. Решение предполагает запуск команд из терминала, так что будьте готовы к этому. Штатными средствами (в смысле, из графического интерфейса) проблема не решается.

Во-первых, сразу скажу, что убийство демона blued с помощью команды "sudo killall -c blued -KILL" с задачей справляется только частично -- демон перезапускается, но работа bluetooth не восстанавливается.

 

Как видим, PID поменялся, но мыша после перезапуска демона так и не вернулась.

А вот решение, которое помогает. Сначала выгрузим драйвер расширение ядра и одновременно удалим все объекты, с ним связанные. Всё это делается одной командой:

sudo kextunload -b com.apple.iokit.BroadcomBluetoothHostControllerUSBTransport

А теперь заново загрузим это расширение:

sudo kextload -b com.apple.iokit.BroadcomBluetoothHostControllerUSBTransport

 

Вуаля! Всё снова работает!

13 комментариев to the "Проблема с bluetooth на Mac OS X"

класс! огромное спасибо

Огромное спасибо за метод! Кстати, работает даже без ввода рутового пароля.

Скажите, а как загрузить sudo kextload -b com.apple.iokit.BroadcomBluetoothHostControllerUSBTransport ? Напишите подробнее, пожалуйста. )

А тут нечего расписывать. Эта команда как раз и грузит нужное для работы bluetooth расширение ядра. Просто вводите её в консоли в точности как указано в примере и нажимаете Enter. Расширение установится заново и bluetooth снова заработает.

У меня не прокатывает пишет после первой команды:Last login: Wed Sep 16 11:24:04 on console mini:~ mac$ sudo kextunload -b com.apple.iokit.BroadcomBluetoothHostControllerUSBTransport Password: (kernel) Can't unload kext com.apple.iokit.BroadcomBluetoothHostControllerUSBTransport; classes have instances: (kernel) Kext com.apple.iokit.BroadcomBluetoothHostControllerUSBTransport class BroadcomBluetoothHostControllerUSBTransport has 1 instance. Failed to unload com.apple.iokit.BroadcomBluetoothHostControllerUSBTransport - (libkern/kext) kext is in use or retained (cannot unload). Что с этим делать не подскажете?

Видимо какое-то устройство или программа в данный момент используют bluetooth и не дают выгрузить расширение ядра. Попробуй методом тыка выяснить, кто держит — поочерёдно поотключай устройства и позакрывай программы.

После апгрейда до El Capitan метод работать перестал :(

А у меня проблема ушла еще на Mavericks и на El Capitan не вернулась. Но зато проблема с регулярно отваливающимся WiFi при подключении к 5Hz тянется уже не один год и никак не решается :(

Действительно, помогла. Большое спасибо..

На дворе весна 2017. Проблема все еще актуальна, спасибо за решение ) macOS Sierra 10.12.3

У меня просит после ввода комманды отключения пароль а у меня пароля нету и ничего не решается

Ну как это пароля нет? Пароль администратора всегда есть. Если не удаётся вспомнить, то можно его поменять: 1) перезагрузить компьютер и во время загрузки сразу после звукового сигнала нажать и удерживать вместе клавиши Cmd-R до появления на экране яблока 2) после загрузки в режим восстановления выбрать в меню Utilities команду Terminal 3) в окне терминала ввести команду resetpassword и нажать Enter 4) следовать указаниям на экране для изменения пароля.

Добавить комментарий

By submitting this form, you accept the Mollom privacy policy.