Как установить драйвер bluetooth на centos
Перейти к содержимому

Как установить драйвер bluetooth на centos

Установка драйверов в Linux

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

В Linux, драйвера тоже необходимы, но ситуация состоит с ними немного по-другому. Здесь все свободные драйвера Linux встроены в ядро и если ваше оборудование будет работать с этой операционной системой, то, скорее всего, оно будет работать из коробки. Свободные драйвера разрабатываются производителями оборудования или же независимыми разработчиками. Также производители могут не открывать код своих драйверов, тогда они считаются проприетарными и не включаются в ядро, а доустанавливаются вручную.

Давайте рассмотрим подробнее работу с драйверами linux и Windows.

Как драйвера устройств работают в Windows

После установки Windows вам необходимо установить драйвера устройств, предоставляемые производителями — драйверы материнской платы, набора микросхем, драйверы видеокарты, звука, сети, wifi и многое другое.

Windows может немного в этом помочь и установить большинство драйверов от производителей через центр обновления Windows. При подключении устройства к компьютеру Windows вы увидите сообщение «Установка драйвера». Windows определяет производителя, ищет драйвер на серверах Microsoft и загружает его на ваш компьютер. Microsoft не пишут драйвера самостоятельно, они получают их от производителей и предоставляют вам, как только они понадобятся.

Если оборудование не работает в WIndows, то обычно вы можете найти драйвер чтобы заставить его работать. Обычно достаточно подыскать подходящий драйвер на просторах сети.

Как работают драйвера Linux

В Linux ситуация с драйверами очень сильно отличается. Большинство драйверов для вашего оборудования распространяются в виде открытого программного обеспечения и интегрированы в дистрибутив Linux. Эти драйверы linux, как правило, являются частью ядра Linux, но здесь есть исключение — драйверы видеокарты являются частью программного обеспечения Xorg, а драйверы принтера включены в набор CUPS (система печати).

Это значит, что большинство доступных для linux драйверов уже установлены на вашем компьютере, включены вместе с ядром, в виде модулей ядра или вместе с графическим сервером или сервером печати. Установка драйверов Linux почти не нужна. Драйвера в Linux разработаны, в основном, энтузиастами, но иногда их выпускают сами производители оборудования, которые вносят свой вклад в развитие ядра Linux и других проектов, например, это Intel, AMD, а также другие, более мелкие производители.

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

Установка проприетарных драйверов Linux

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

Чаще всего нам приходится сталкиваться с проприетарными драйверами для видеокарт, например, для NVIDIA, которые обеспечивают лучшую производительность в играх на Linux. Конечно, есть драйверы ядра Linux с открытым исходным кодом, которые заставят вашу видеокарту работать, но они не могут обеспечить достаточный уровень производительности в 3D играх. Некоторые драйвера wifi по прежнему закрыты, поэтому ваше оборудование не будет работать пока вы их не установите.

Установка драйверов в Linux зависит от вашего дистрибутива. В Ubuntu и основанных на ней дистрибутивах есть специальный инструмент — Дополнительные драйверы.

Программа определит, какие проприетраные драйверы устройств Linux можно установить и предложит скачать и установить их. В Linux Mint тоже есть инструмент менеджер драйверов, он работает аналогично инструменту в Ubuntu. Fedora — против проприетарных драйверов Linux и здесь нет никакого способа их установить. Во многих дистрибутивах проприетарные драйверы устройств linux можно найти в неофициальных репозиториях. Каждый дистрибутив решает эту проблему по-разному.

Установка прошивок в Linux

Не все могут делать драйвера с открытым кодом или проприетарные драйвера. Некоторым драйверам необходимы прошивки, чтобы правильно работать с устройствами. Например, прошивки нужны для работы некоторых модулей wifi или сетевых интерфейсов.

Чтобы установить прошивки в Linux необходимо скачать и установить пакет linux-firmware, это можно сделать с помощью следующей команды в Ubuntu:

sudo apt install linux-firmware

А в RPM дистрибутивах:

sudo yum install linux-firmware

Также возможно придется установить другие прошивки. Чтобы посмотреть подробнее, что нужно, и как установить, посмотрите лог ядра dmesg.

Как установить драйверы для принтера в Linux

Возможно, вам понадобится поставить драйвера linux для принтера. Однако при использовании инструмента для конфигурации принтеров — CUPS вы можете выбрать нужный драйвер из баз данных. Как правило, программа определяет производителя вашего принтера, а в списке вы можете выбрать точную модель принтера.

Вы также можете попытаться определить принтер по описанию PostScript или PPD файла. Эти файлы часто входят в состав драйвера принтера для Windows и вы можете найти PPD файл, который сделает работу вашего принтера лучше. Файл PPD можно выбрать в процессе работы CUPS.

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

Как заставить работать другое программное обеспечение

Иногда вам может понадобиться поставить драйвера linux для другого оборудования, которые не предоставляются автоматически. Например, NVIDIA предоставляет собственный инсталлятор для своего драйвера. Но тем не менее лучше использовать драйвера упакованные для вашего дистрибутива, они будут работать лучше.

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

Найти подробную информацию, как настроить работу того или иного оборудования в вашем дистрибутиве можно на различных форумах. Обычно, если у вас не очень новое устройство, другие пользователи уже сталкивались с этими проблемами, но они их уже решили, и вы можете найти эти ответы.

Выводы

Вы не должны возиться с драйверами слишком много. Драйвера в Linux с открытым исходным кодом и они интегрированы в ядро. В большинстве случаев вам не нужно устанавливать их или изменять, система автоматически определит оборудование и загрузит автоматические драйверы. Когда вы установили Linux, ваше оборудование должно работать либо сразу, либо после установки нескольких проприетарных драйверов.

Вы можете устанавливать и драйвера linux, размещенные на официальных сайтах производителей, но проприетарные драйвера могут работать не настолько хорошо, как подготовленные для вашей системы.

Broadcom Corporation BCM4311, BCM4312, BCM4313, BCM4321, BCM4322, BCM43224, BCM43225, BCM43227 and BCM43228 Based Wireless NICs

<!>These chipsets are not natively supported by CentOS.

This page is currently maintained by: Miloš Blažević

  1. Broadcom Corporation BCM4311, BCM4312, BCM4313, BCM4321, BCM4322, BCM43224, BCM43225, BCM43227 and BCM43228 Based Wireless NICs
    1. Step 1: Determining WLAN chip and installing dependencies
    2. Step 2: Downloading and extracting Broadcom driver archive
    3. Step 3a: Compiling the Broadcom driver module (on EL6 and EL7)
    4. Step 3b: Compiling the Broadcom driver module (specifics required for EL7)
    5. Step 4a: Loading the driver module into kernel
    6. Step 4b: Loading the driver module into kernel on boot time
    7. Appendix A: Broadcom chip models tested and reported (by community members) as working
    8. Appendix B: Broadcom chip intermittent problems

    In order to install Broadcom BCM4311, BCM4312, BCM4313, BCM4321 or BCM4322, BCM43224, BCM43225, BCM43227, or BCM43228 based wireless network cards, the next steps should be followed:

    Step 1: Determining WLAN chip and installing dependencies

    First of all, make sure you are the «proud owner of Broadcom BCM43xx wireless card»:

    After the WLAN chip model was determined, make sure you have no missing packages needed at compile-time and install them if you do:

    Of course, if you’re compiling the driver for Xen kernel (i.e. kernel-xen), you should install kernel-xen-devel instead of kernel-devel.

    Step 2: Downloading and extracting Broadcom driver archive

    Download the Broadcom BCM43xx linux driver archive from Broadcom Official website — you’ll find it as in the search results list as either Linux® STA 32-bit driver or Linux® STA 64-bit driver — to your machine and extract it to /usr/local/src/hybrid-wl and feel free to change the ownership of the directory and it’s contents to some unprivileged user

    Step 3a: Compiling the Broadcom driver module (on EL6 and EL7)

    Driver module can be compiled as follows:

    Mind the quotes (i.e. back quotes).

    Now, with the current driver (version 6.30.223.271) it’s almost certain you’ll get an error message instead of compiled driver module (in fact, different scenario other that this error message is unknown to the author). The message might/will vary depending on the kernel and OS version, but on CentOS 6 it should look something like this:

    On EL6, the driver won’t compile because of the if-then-else clause for kernel version checking in file wl_cfg80211_hybrid.c. To remedy this, we’ll run the following sed replacement commands:

    Just these ‘sed’ replacements are not enough to ensure proper driver compilation. So, we also need to apply the following patch wl-kmod-fix-ioctl-handling.patch prior to actually compiling the driver. Download it to /usr/local/src and run the following command to patch the driver source code:

    Now, try compiling the driver module again:

    and the compile output should look something like this:

    • LD /usr/local/src/hybrid-wl/built-in.o CC [M] /usr/local/src/hybrid-wl/src/shared/linux_osl.o CC [M] /usr/local/src/hybrid-wl/src/wl/sys/wl_linux.o CC [M] /usr/local/src/hybrid-wl/src/wl/sys/wl_iw.o CC [M] /usr/local/src/hybrid-wl/src/wl/sys/wl_cfg80211_hybrid.o
    • LD [M] /usr/local/src/hybrid-wl/wl.o Building modules, stage 2.
    • MODPOST 1 modules CC /usr/local/src/hybrid-wl/wl.mod.o LD [M] /usr/local/src/hybrid-wl/wl.ko.unsigned NO SIGN [M] /usr/local/src/hybrid-wl/wl.ko

    make: Leaving directory `/usr/src/kernels/2.6.32-573.7.1.el6.x86_64′ >>> The module, once built, can be stripped of unnecessary symbols:

    What you will notice, is that driver module file size reduces (from 8.2MB to 7.2MB). And yes, your driver module works ;-)

    Step 3b: Compiling the Broadcom driver module (specifics required for EL7)

    Depending on EL7 point release (or better yet, the kernel version you’re running), sub-set of sed replacements to apply will differ. So, stock kernels shipped with EL 7.0 (i.e. kernel-3.10.0-123.X), don’t require running any of the commands below, EL 7.1 (i.e. kernel-3.10.0-229.X) require the first two, EL 7.2 (i.e. kernel-3.10.0-327.X), require first four ‘sed’ commands, EL 7.3 requires first 6 executed, EL7.4 first 7, and for EL 7.5 all ‘sed’ commands are required so as to make the code compile (along with the one from step 3a):

    After applying these to the source code, just follow through the reminder of step 3a — compile the driver, and strip debugging info from it. Again, kernel builds =>229 require first two commands ONLY, builds => 327 require running first four sed replacements, builds >=514 require 6, builds >=693 require 7, and for builds >=862 all sed replacements are needed for driver to compile

    Step 4a: Loading the driver module into kernel

    Having successfully compiled the driver module, you can now load it into kernel, and eventually set up automatic driver load on system boot (to do all this, you’ll have to assume root privileges). Of course, driver module loading can be done only after you remove the existing/conflicting wireless driver modules from kernel (in case these are loaded):

    copy the driver module file to a location where kernel can find it:

    to be consistent with all other external modules that have been / may be installed from a kmod packages (e.g. fuse, ntfs-3g, etc.)

    in order to create a list of module dependencies, and now load the driver module:

    If no error was reported, the driver module is now successfully loaded and ready to use. The ‘ndiswrapper’ kernel module can be removed, provided you don’t use it for anything else but wireless driver — but this is not necessary.

    Step 4b: Loading the driver module into kernel on boot time

    Couple of more steps are needed to get your module load every time the system boots. First, edit the /etc/modprobe.d/blacklist.conf file adding the lines:

    By doing so, you’re preventing these modules from being loaded into kernel at boot time and conflicting with the wl module. Second, in order to load the wl module into the kernel on boot time, create/edit the file /etc/sysconfig/modules/kmod-wl.modules and copy-paste the following contents into it:

    Your driver should now load every time you reboot (except of course, when you install the new kernel, in which case the driver has to be re-compiled for it following these same steps).

    �� Как подключиться к устройству Bluetooth из терминала Linux

    В этой статье мы обсудим, как вы можете управлять устройством Bluetooth с терминала Linux – дистрибутивов на основе Ubuntu, Debian, Fedora и Arch.

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

    Спецификация разработана, опубликована и продвигается Специальной группой по интересам Bluetooth (SIG).

    В этом руководстве мы будем использовать BlueZ, который обеспечивает поддержку основных уровней и протоколов Bluetooth.

    Это гибкий, эффективный инструмент, который использует модульную реализацию. Он имеет следующие ключевые особенности.

    • Полная модульная реализация
    • С имметричная мульти-безопасная обработка
    • Многопоточная обработка данных
    • Поддержка нескольких устройств Bluetooth
    • Реальная аппаратная абстракция
    • Стандартный интерфейс сокетов для всех слоев
    • П оддержка безопасности устройств и уровня обслуживания

    Установка BlueZ на Linux

    Установите пакеты BlueZ с помощью любой из следующих команд, соответствующих вашему дистрибутиву Linux.

    Эта установка предоставляет утилиту bluetoothctl.

    Вам необходимо добавить свою учетную запись в группу lp, если вы хотите подключиться к Bluetooth-модему.

    Как выполнить сопряжение и подключиться к устройству Bluetooth

    Мы собираемся использовать интерфейс командной строки bluetoothctl tp bluez.

    Если у вас есть альтернативный интерфейсный инструмент, такой как GNOME Bluetooth, вы можете использовать его.

    Сначала убедитесь, что Bluetooth не отключен.

    Подтвердите, что он разблокирован.

    Использование bluetoothctl для подключения к устройству Bluetooth

    Это общий план сопряжения устройства с использованием bluetoothctl.

    Запустите интерактивную команду bluetoothctl.

    Введите help, чтобы получить список доступных команд.

    Включите адаптер Bluetooth

    Включите адаптер Bluetooth при запуске системы

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

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *