Как установит драйвер сетевой карты linux

Самые полезные настройки и команды Linux

Автор: Igor Ljubuncic, перевод: С.Русинов

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

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

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

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

Установка

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

Если поставщик оборудования является щедрым, он, возможно, дополнит поставляемый драйвер само-устанавливающим скриптом. Другими словами, вам будет нужно только запустить одну команду, которая выполнит: распаковку архива, компиляцию, установку и загрузку драйвера. Но это может не работать. Я был свидетелем как само-устанавливающийся скрипт драйвера работал неверно. По этой причине, для всех практических задач, вам следует устанавливать драйвер вручную.

После успешной распаковки из архива и компиляции исходников (./configure, make, make install), вы, скорее всего, столкнетесь с выбором из трех вариантов:

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

При втором варианте, процесс установки, будет выглядеть следующим образом:

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

Вам нужно открыть конфигурационный файл, содержащий список модулей. Также необходимо знать его точное имя и размещение файла в вашем дистрибутиве. В Ubuntu этот файл называется modules.conf и размещается в /etc каталоге ( /etc/modules.conf ). Мы обновим этот файл, но вначале мы сделаем его резервную копию. Пожалуйста помните, что для изменения конфигурационных файлов нужны права суперпользователя.

Так будет выглядеть эта процедура:

Приведенные выше команды откроют файл modules.conf в текстовом редакторе gedit. Теперь, просто добавьте драйвер в пустую строку ниже существующих драйверов, сохраните файл, выйдите из текстового редактора и перезагрузите систему, чтобы изменения вступили в силу. Это все!

Вот пример, файла modules.conf для Kubuntu Linux, установленной на виртуальной машине. Добавим новый драйвер. Мы просто запишем его имя ниже существующих записей. Конечно, необходимо знать ТОЧНОЕ имя соответствующего драйвера.

Третий вариант немного более сложный.

Загрузка драйверов

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

Читайте также:  Не может скачаться windows 10

Нам нужно установить драйвер в ядро. Это можно сделать с помощью команды insmod .

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

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

Конфигурирование драйверов

Конфигурирование драйвера требует немного знаний о его функциональности. Чаще всего инструкции находятся в текстовых файлах how-to руководства.

Ниже приведенный пример показывает как конфигурировать сетевую карту после загрузки сетевого драйвера. Сетевой карте присвоен идентификатор и IP адрес. В данном случае, eth0 — имя выбранного устройства, но оно может быть другим, например: eth1, eth2 и т. д. . Назначенный IP адрес показывает нам, что машина будет частью локальной сети.

После перезагрузки вы увидите, что сетевое подключение отсутствует. Это происходит из-за того, что драйвер отсутствует в общем каталоге по умолчанию, и система не знает, где его искать. Вам придется повторить всю процедуру снова:

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

Скрипты

Как и в системах DOS и Windows, скрипты могут быть написаны в текстовом редакторе. Учитывая внутренние различия между текстовыми файлами и скриптами, необходимо различать текстовые файлы и скрипты. В системе Windows достаточно изменить расширение .txt на .bat и файл станет скриптом. В Linux немного по-другому.

Командная строка Linux находится внутри оболочки или, точнее сказать, и есть сама оболочка или Шелл (Shell). Существует несколько оболочек, каждая со своим уникальным набором команд. Самая популярная (устанавливается по умолчанию) оболочка Linux это BASH . Нам необходимо добавить информацию в наш скрипт, если хотим сделать его связанным с нашей оболочкой.

Таким образом, записав в файл приведенные выше команды плюс ссылка на оболочку, получим следующий скрипт:

Можно сделать это короче:

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

Сделаем скрипт исполняемым.

Теперь у нас есть работающий скрипт. Нам нужно разместить его в каталоге /etc/init.d и он будет запускаться во время начальной загрузки системы.

В завершение нужно обновить систему для активации скрипта.

После перезагрузки вы поймете, что драйвер загружен автоматически и сетевая карта сконфигурирована! Возможен и другой вариант, make install и драйвер будет помещен в каталог по умолчанию:

Или вы могли разместить драйвер в этом каталоге сами. Таким образом, вы могли бы избежать написания скрипта.

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

Источник

Установка драйверов на устройства беспроводной сети Broadcom

Содержание

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

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

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

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

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

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

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

Читайте также:  Old house big windows

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

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

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

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

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

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

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

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

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

Надеюсь, понятно, что вместо

нужно подставить имя пакета из списка ниже:

Special Case #1 — используется комбинация драйверов bcma и brcmsmac. Требуется прошивка, устанавливаемая по умолчанию пакетом linux-firmware.
Special Case #2 — в аппаратных средствах, таких как например Lenovo S10-2, Ваша карта может зациклиться в процессе соединения SSID.
Альтернативным решением может послужить установка пакета bcmwl-kernel-source.
Следует упомянуть, что в некоторых особых случаях после установки firmware-b43-installer, нужно будет удалить модуль b43, a затем активировать его заново и произвести разблокировку средствами rfkill:

Если устройство определилось с иным 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

Источник

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

Доброго времени суток! Решил поставить Debian 7. В процессе установки потребовались драйвера для сетевой карты, так как под рукой не было, то пропустил. Материнская плата: foxconn h67a-s После в консоли ввожу

Последние строки dmesg-а

Драйвер качал с оф сайта realtec, по поиску r8169 Прошу помощи.

А подробнее можно? Что ты там качал?

З.Ы. А что, готового уже модуля ядерного нет такого чтоль? Зачем качать откуда-то?

лучше использовать ядреный драйвер, это раз.

Нужно установить пакет с прошивками для карт от realtek, это два.

По умолчанию в Debian нет прошивок. Подключите.

lspci |grep -i net 03:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 06)

всё работает, не надо вот тут.

Верни назад aptitude install firmware-realtek

И просто в /etc/network/interfaces пропиши

Прочитал, что лучше установить драйвер вручную.

Нагло врут. Твоя проблема решается не сменой драйвера, а

Читайте также:  Как проверить жесткий диск не могу установить windows

верни наместо ядерный модуль и:
apt-get install firmware-realtek

Там, где скачивал образы, есть каталог non-free, в котором есть образ с включёнными прошивками.

Т.е помимо основного образа с системой надо всегда еще выкачивать образ с прошивками?из non-free ветки? и как вернуть ядерный модуль? этот rmmod-ом удалить, а старый вернуть как?

А где почитать про это? Я читал много статей по установке debian, но ничего подобного не нашел. Где вы находите эту информацию?!)

Т.е помимо основного образа с системой надо всегда еще выкачивать образ с прошивками?из non-free ветки?

Просто ставьте систему с образа, в котором содержатся non-free компоненты, в том числе и прошивки.

Переустновить пакет с ядром.

Ну и просто надо знать, что в стандартной поставке Debian (установочных образах) нет прошивок.

я просто качал с оф сайта debian dvd-amd64, там я не заметил нигде разные виды образов,как мне найти нужный?

Пакет с ядром, это мне надо переустановить kernel-package? Простым apt-get?

Еще же можно скачать пакет firmware-realtek и поставить dpkg -i его, вручную, да?

я просто качал с оф сайта debian dvd-amd64, там я не заметил нигде разные виды образов,как мне найти нужный?

Читаем внимательно вот этот текст: и скачиваем предложенные образы net-install, включающие в себя несвободные прошивки, при установке с такого образа не забываем в списке пакетов выбрать пакет с прошивками под ваше оборудование.

Пакет с ядром, это мне надо переустановить kernel-package? Простым apt-get?

Еще же можно скачать пакет firmware-realtek и поставить dpkg -i его, вручную, да?

Сделал все как вы сказали.Не помогло. Для сравнения скачал non-free netinstall образ, поставил с него — результат тот же.

Смотреть вывод dmesg на предмет сообщений от драйвер r8169 на примере тех, что вы привели в шапке темы.

Тут проблема не в модуле, а в прошивке, Debian по умолчанию не содержит в себе никаких несвободных прошивок и ПО, решается установкой пакета firmware-realtek.

Вот логи Сразу после загрузки системы

Попробуйте принудительно запустить dhcp клиент:

И проверьте получает или нет интерфейс параметры сети.

В общем итог. Пробовал все, что написано. Ничего не помогало, тогда взял и напрямую соединил два компьютера, на одном задал адрес 192.168.0.1, на другом(проблемном) 192.168.0.2 с маской /24, т.е решил проверить работает ли вообще железо, со статикой. О чудо, все заработало!(пинг прошел) Тогда я взял и соединился с сетью провайдера не через свитч, и все сработало! Оказывается был виноват свитч. Пробовал тогда в разные порты свитча втыкать, снова не работало ничего, на второй системе(win7) все работало и со свитчем. Другой комп с дебианом тоже через свитч нормально работает. Магия.

Возможно стоит обновить ядро в Debian или использовать другой DHCP клиент. У меня при использовании классического ISC DHCP Client`а в сети провайдера не параметры сети не получаются, поэтому я использую dhcp клиент из состава busybox.

Есть еще вероятность, что у тебя в биосе не включены какие-нибудь настройки. Я так-же парился с Ethernet на маме GA-970-UD3p (такой-же адаптер). Смотрю в сислог, а там чехорда. Флешку включаешь, езернет валится. Мышь, то работает, то — нет. На чипсет матершина какая-то. Я сделал вывод, что ядро отстает от производителей железа. И начал искать дрова от AMD и прочих для линукс. Наткнулся на статью про IOMMO controller. Зашел в биос поставил Enableb на нем и еще EHCI Hand-off и Port 60/64 Emulation, И, ооо, чууудо. Пошел пинг. Раздался IP.

Ты хоть дату создания темы (12.02.2014) или последнего коментария (14.02.2014) смотрел? Рано ты отписался, пожождал бы хотя бы до 12 февраля, было бы как раз два года с даты создания, можно было бы праздник устроить. А так, эх .

Источник

Оцените статью