Сетевые карты на базе чипа TN4010 получают все более широкое распространение. Они встречаются в следующих продуктах:
- D-Link DXE-810S;
- Edimax EN-9320SFP+;
- StarTech PEX10000SFP;
- Synology E10G15-F1;
- D-Link DXE-810T;
- Edimax EN-9320TX-E;
- EXSYS EX-6061-2;
- Intellinet 507950;
- StarTech ST10GSPEXNB.
Если вы стали обладателем данной карты, но вставив ее в сервер, не наблюдаете NIC, то у в ОС отсутствует необходимый для ее работы драйвер. Для MS Windows производитель предоставляет драйверы в скомпилированном формате, а для ОС Linux только в виде исходных кодов.
На первый взгляд может показаться, что заставить работать эту карту в Linux будет проблематично. В реальности, все делается элементарно с помощью DKMS — системы поддержки динамических модулей ядра.
Рассмотрим как собрать и установить драйвер для TN4010 за 1 минуту. Дальнейшие команды выполнялись в Ubuntu 18.04.
Установка DKMS
sudo apt-get update sudo apt install dkms
Получение, сборка и установка драйвера
# получаем исходники, проверьте свежий релиз на github среди доступных # веток, сейчас используется релиз release/tn40xx-v003 # # https://github.com/acooks/tn40xx-driver # sudo git clone -b release/tn40xx-003 https://github.com/acooks/tn40xx-driver.git /usr/src/tn40xx-003 # добавляем модуль sudo dkms add -m tn40xx -v 003 # компилируем модуль sudo dkms install -m tn40xx -v 003
Проверяем загрузку модуля
sudo modprobe tn40xx # проверим, что модуль загружен sudo lsmod | grep tn40xx
После выполнения данного действия у вас должна появиться новая сетевая карта. В нашем случае она получила имя enp2s0. Карта была протестирована на работоспособность с DAC-кабелем HP и коммутатором HP6600-24x.
Данная заметка была написана как перевод к документу из репозитория https://github.com/acooks/tn40xx-driver.