Как установить linux firmware

Обновлено: 03.07.2024

Данное руководство реализовано, учитывая интенсивность поиска решения проблемы установки драйверов на сетевые карты, известные как Broadcom Wireless Cards. В совокупности, есть желание помочь начинающим и не только пользователям, определить и установитъ аппроприативные 1) драйвера на адаптер беспроводной сети. После применения изменений, настоятельно рекомендуется протестировать соединение как минимум в течениe двух часов непрерывного использования, лучше всего - до восьми часов UP-a.

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

Список проблем, которые будут решены:

обрыв соединения после непродолжительного использования (засыпание) остановка запроса пароля доступа к точке доступа, даже, если оный отсутствует случаи полного фриза системы из-за установки неподходящих драйверов появление соединения в Менеджере Сети при физическом отсутствии оного потеря соединения после обновления системы на более новую версию сетевая карта заблокирована системно, или же нет возможности программного включения таковой остальной перечень наиболее упомянутых проблем на Launchpad, форумах *buntu, AskUbuntu.

Само решение проблемы систематизируется в ТРИ основных ступени:

Не нужно одновременно устанавливать bcmwl-kernel-source и firmware-b43-installer. Нужно выбрать только один пакет в соответствии с таблицей

Определение оборудования

Существует множество модификаций сетевых карт Broadcom и постоянно появляются всё новые версии. Посему, лучшим решением остаётся определение модели
по PCI.ID. Для этого, необходимо открыть терминал Ctrl+Alt+T и ввести 2) :

Примерным ответом будет:

В данном случае установлен bcmwl-kernel-source. 3)
Обладая этой информацией, мы можем определить правильную версию драйвера из списка Broadcom, который будет приведён ниже.
Например, как только мы выяснили, что PCI.ID карты - [14e4:4320] (rev 03), то oбратившись к списку драйверов мы увидим, что данный PCI.ID
соответствует пакету firmware-b43-installer который и необходимо будет впоследствии установить для правильной работы беспроводного адаптера.

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

Hеважно, что иcпользовалось для установки пакета: терминал, Synaptic, Центр Приложений, dpkg или же ручная компиляция.
Нам необходимо начать с нуля и очистить систему от всего, что может помешать работе аппропреативного драйвера.
Т.е., если был установлен пакет bcmwl-kernel-source, его нужно удалить:

Подготовка системы

Ha комп-ах с UEFI надо отключить SecureBoot в BIOS для установки bcmwl-kernel-source.

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

Также, крайне рекомендуется обновить списки PCI.ID:

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

Установка необходимого пакетa

Как уже упомяналось выше, мы будем рассматривать установку пакета firmware-b43-installer
Для этого набираем в терминале:

и перезагружаемся для применения изменений:

Формат установки пакета крайне прост:

Надеюсь, понятно, что вместо <PACKAGE_NAME> нужно подставить имя пакета из списка ниже:

Если устройство определилось с иным PCI.ID, задайте свой вопрос автору данной инструкции: AskUbuntu

Установка Offline

В том случае, когда проводная сеть недоступна, есть возможность установить bcmwl-kernel-source с установочного диска.
Для этого нужно вставить установочный CD/DVD или USB и скопировать эти файлы в домашнюю директорию.
На установочном диске (флешке) эти файлы находятся в директориях:

После чего, запускаем саму установку:

Если у Вас Ubuntu 14.04.2 4) , пакет придётся скачивать из сети:
64-BIT
32-BIT
Скопируйте нужную версию в домашнюю директорию и установите тем же способом как показано выше. В обоих случаях необходимо доустановить dkms с установочного диска или USB. Его можно скачать отдельно тут.

Пакет firmware-b43-installer, при полном отсутствии любого подключения к сети придётся скачать иным путём, например через смартфон. Нужно будет скачать эти два файла и положить их опять-таки в домашнюю директорию:
Для 64-BIT
Первый файл, Второй файл
Для 32-BIT
Первый файл, Второй файл

После этого, выполняем в терминале:

Если будут какие-то ошибки, то продолжать не надо. Значит что-то сделал не так. Проверьте правильность введения команд.
Осталось переподключить модуль ядра:

В случае установки Ubuntu 16.04 в режиме dualboot, необходимо отключить SecureBoot. В противном случае, драйвер не запустится.
На этом всё.
Удачи в освоении системы.
Особая благодарность chili555 и Pilot6

В этой статье описано как установить и настроить свободные драйвера для видео карт типа ATI/AMD на системах с операционной системой Debian. Информация касающаяся установки патентованных драйверов смотреть на ATIProprietary.

Идентификация

Всю необходимую информацию о вашей видео карте можно узнать с помощью команды lspci. Например:

Драйвера

Пакет xserver-xorg-video-ati автоматически распознает имеет ли ваше оборудование Radeon, Rage 128, или Mach64 и загрузит соответствующий драйвер.

Поддерживаемые устройства

Radeon драйвер в Debian 8 "Jessie" поддерживает данные модели ATI/AMD видео карт - от Radeon 7000 до Radeon R9 290. Для подробной информации смотрите radeon(4) страницу руководства и также radeon страницу на X вики.

Прошивка (firmware)

Бинарные прошивки с radeon DRM были убраны из linux-2.6 2.6.29-1, чтобы избежать ошибки 494009. Прошивку можно получить установив пакет firmware-linux-nonfree.

Без этого пакета, пользователи radeon драйвера обычно испытывают низкую 2D / 3D производительность. Некоторые видео карты нуждаются в этой прошивке, чтобы запускать систему X Window.

Установка

Неполадки

Конфигурация

В большинстве случаях свободный драйвер в ручной настройке не нуждается, так как Xorg X сервер автоматически определяет и настраивает доступное оборудование.

Двойные видео карты

AMD выпускает двойные видео карты (AMD + Intel видео карта). Обе видео карты работают в одно и то-же время при этом перегревают компьютер и создают много шума.

Debian Stretch (testing)

В Debian Stretch можно установить самую новую версию MESA которая поддерживает DRI двойные видео карты. Убедитесь то, что intel и radeon драйверы установлены. Так-же firmware-linux-nonfree пакет должен быть установлен.

Проверьте то, что распознаются две видео карты :

Выше указанная команда выведет название видео карты и к ней привязанные драйвера. Для того, чтобы Radeon видео карта обрабатывала графически интенсивные процессы используйте:

Вы можете проверить параметр с данной командой.

Вывод должен быть AMD.

Используя опцию DRI_PRIME вы можете запускать 3D/игры/фильмы которые требуют побольше графической силы.


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

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

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

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

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

Если оборудование не работает в 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:

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

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

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

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

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

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

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

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

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

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

Выводы

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

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


Сама по себе процедура установки Debian GNU/Linux 9, на мой взгляд, не должна вызывать особых затруднений даже у начинающих Linux-администраторов. Однако могут возникнуть вопросы в тех случаях, когда установка выполняется на некотором серверном оборудовании, имеющем ребрендинговые модели тех или иных адаптеров и контроллеров. Так, например, при установке Debian на сервер HP ProLiant DL380 старого поколения Gen5 можно столкнуться с проблемой отсутствия в базовом инсталляторе ОС микрокода firmware для встроенных сетевых адаптеров Broadcom NetXtreme II BCM5708 (HP NC373i Multifunction Gigabit Server Adapter в маркировке HP).


Фактически нам нужен пакет firmware-bnx2_20161130-3_all.deb, доступный в non-free репозиториях Debian. Мы можем скачать файл firmware-bnx2_20161130-3_all.deb и разместить его, например, на USB-накопителе. Программа установки подхватит этот пакет c накопителя в случае выбора "Yes".

В том случае, если накопитель с firmware не был подключен, в последующем при попытке настроить сетевое подключение мы получим ошибку.


Если по какой-то причине нет возможности подключить соответствующий микрокод в процессе установки, - ничего страшного, ибо установку ОС можно продолжить и с ненастроенной сетью. А произвести доустановку недостающего микрокода можно уже после окончания установки ОС.

При этом стоит помнить про то, что с учётом неработающей сети, установку лучше производить с полного дистрибутива Debian, а не с урезанного дистрибутива NetInstall, который для завершения установки ОС может потребовать загрузки по сети каких-то недостающих пакетов.

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


Устанавливаем firmware для сетевых контроллеров с накопителя

Мы можем установить недостающий микрокод firmware с USB накопителя, предварительно загрузив на этот накопитель пакет из онлайн репозиториев на каком-то другом компьютере. Если нет USB накопителя, но в iLO активирован функционал Advanced features, то мы можем удалённо подмонтировать каталог с нужным пакетом в качестве дополнительного виртуально диска. В нашем случае выбран последний вариант.

Создадим на клиентской файловой системе (на компьютере, с которого запущена консоль iLO) отдельный каталог и скопируем в него загруженный с сайта deb-пакет содержащий нужные нам микрокоды firmware. Используя функционал iLO, смонтируем этот каталог в качестве виртуального диска на нашем Linux-сервере.



Обратите внимание на то, что каталог монтируется в режиме Read Only и имеет ограничения по размеру:


Как видно, в нашем случае этот виртуальный накопитель ассоциирован в системе с устройством /dev/sda . Создадим временный каталог и смонтируем в него устройство /dev/sda

Теперь нам доступен deb-пакет, который ранее был помещён в подключенный через iLO каталог:


Выполняем установку пакета, используя утилиту dpkg:

Данный пакет создан таким образом, что в процессе его установки вызывается пересборка загружаемого в процессе запуска ОС образа initrd (initial ramdisk)


После этого перезагружаем сервер и проверяем то, что микрокод firmware успешно подключается в ходе загрузки ОС.


Теперь в системе можно настроить параметры IP ( /etc/network/interfaces ) и сеть должна заработать.

Подключаем репозитории non-free в Debian GNU/Linux 9

Для дальнейшего обновления установленного пакета firmware-bnx2 к менеджеру пакетов apt можно подключить non-free репозитории, о которых упоминалось выше. Для этого внесём соответствующие изменения в файле /etc/apt/sources.list , приведя его, например, к следующему виду:

Теперь осталось только обновить кеш менеджера пакетов и можно устанавливать и обновлять дополнительные недостающие микрокоды firmware из non-free репозиториев Debian


В заключении, говоря об установке Debian на HP ProLiant DL380 G5, можно также отметить тот факт, что проблем с драйвером cciss, как в CentOS 7, попросту нет, ибо драйвер cciss , как это ни странно, имеется в базовом составе дистрибутива Debian GNU/Linux 9.

Читайте также: