Недавно мне понадобилось достать и принять в эксплуатацию старый компьютер, который не имеет встроенной сетевой карты на материнской плате. Это вполне нормально для того времени, когда он приобретался, поскольку в те времена намного популярнее были факс-модемы, которые позволяли осуществлять Dial-Up подключение к сети Интернет, а вот RJ45 использовались чаще всего только для связи в локальной сети. Так или иначе, сетевую карту мне пришлось докупить. После ее установки я был немного удивлен, когда огонек на сетевой карте загорелся, а программа установки Debian оповестила меня о том, что ни одна сетевая карта на моем компьютере не найдена. Это весьма странно, поскольку такое оборудование, как сетевая карта, чаще всего никаких дополнительных драйверов не требует. Разберем наиболее часто встречающиеся проблемы с сетевыми картами в Linux и постараемся найти им решение.
Прежде всего, стоит отметить, что значок «Нет сети» на системной панели вовсе не означает, что вы не подключены к Интернету. В одном моем компьютере, имеющем две сетевые карты на борту, network-manager администрировал почему-то только одну, а вторая поднималась в системе автоматически. При всем этом у меня все время отображался значок, при котором, казалось бы, доступа в Интернет быть не должно. Сетевая карта также может быть просто неправильно настроена. Для того, чтобы проверить эту теорию, нужно набрать в терминале следующую команду:
sudo ifconfig
Следующим пунктом следует проверить вывод списка PCI-устройств. Сформировать этот список можно выполнив следующую команду в консоли:
lspci
lspci | grep eth*
Следующий уровень ― BIOS. Жмем при загрузке кнопочку «Delete» и заходим в меню BIOS. Если прежде в компьютере никогда не было сетевой карты, то вполне логично можно предположить, что все функции, с нею связанные, отключены еще из этого меню. Искать их, впрочем, мы не станем (в виду того, что разные производители выделываются как только могут и один и тот же пункт в результате на разных материнских платах может называться совершенно по-разному), а вместо этого просто сбросим все настройки на заводские умолчания (factory settings или, реже, failsafe settings). После перезагрузки снова смотрим вывод lspci. Если карта появилась в списке PCI-устройств, то все замечательно. Если нет, то нужно смотреть еще глубже.
Прежде всего проверьте сетевую карту на совместимость. У PCI тоже есть разные версии и на мой компьютер, к примеру, нельзя поставить карту с PCI-Express, зато можно поставить карту с PCI 2.0. Горит ли огонек на карте, если к ней подключить патч-корд (учтите, что с другой стороны патч-корд также должен быть подключен к чему-то работающему, так как в противном случае огонек не загорится даже на самой рабочей конфигурации)? Если не горит, попробуйте вставить сетевую карту в другой PCI-разъем. Иногда PCI-разъемы повреждаются и работать корректно больше не могут. Если и после изменения разъема все осталось по-прежнему, просмотрите контакты на сетевой карте. Быть может, повреждены именно они? Если есть возможность, попробуйте подключить эту сетевую карту к другому компьютеру такой же конфигурации. Также при возможности советую проверить те разъемы PCI, в которых отказалась работать сетевая карта, при помощи подключения к ним каких-нибудь других устройств (никаких драйверов устанавливать не надо, главное, чтобы в lspci появились данные о том, что в разъем вставлено какое-то устройство). Если на другом компьютере сетевая карта работает, а в вашем работает другое устройство, то это, скорее всего, несовместимость версий PCI. Если сетевая карта не работает и на другом компьютере, то смело несите ее туда, где приобрели ― это либо брак, либо продавцы намеренно вручили вам некондиционный товар. В крайнем случае, пусть проверяют у себя и доказывают, что на самом деле она рабочая.