NAS4Free не видит сетевую карту — установка драйвера if_re.ko

NAS4Free не видит сетевую карту — установка драйвера if_re.ko

настройка NAS4Free

После установки NAS4Free на новое железо, обычно на материнские платы LGA1150 (Intel Haswell) возникает проблема — система не видит сетевую карту. Чтобы избежать подобных проблем, необходимо проверять совместимость оборудования заранее — wiki.nas4free.org. Разумеется, в первую очередь, стоит уделить внимание сетевому адаптеру, т.к. существуют весьма распространенные чипы: Realtek 8111G, 8111GR ( …), поддержка которых ограничена.

Напоминаю, в операционной системе FreeBSD проверка сетевых настроек выполняется компандой ifconfig (при этом рекомендуется использовать ключ -a).

Чтобы решить описанную выше проблему — необходимо в ручном режиме установить драйвер сетевой карты if_re.ko. Для этого необходимо выполнить ряд нижеописанных действий:

  • заранее скачиваем драйвер и помещаем его на флешку if_re.ko
  • запускам сервер с NAS4Free
  • переходим в режим командой строки, Shell — клавиша 6
  • далее работа будет проводиться в консоли, как будто мы подключились по SSH
  • создаем папку «usb»:

mkdir /mnt/usb

  • определяем имя подключенного usb-устройства при помощи инструмента dmesg, получаем следующее:

dmesg


umass1: <USB 2 Flash Disk, class 0/0, rev 2.00/0.00, addr 3> on uhub4
da1 at umass-sim1 bus 1 target 0 lun 0
da1: <USB 2.0 Flash Disk 2.20> Removable Direct Access SCSI-2 device
da1: 40.000MB/s transfers da1: 119MB (244480 512 byte sectors: 64H 32S/T 119C)

  • подключенное устройство — da1, монтируем его командой

mount_msdosfs /dev/da1 /mnt/usb

  • запускаем упаковку:

kldload /mnt/usb/if_re.ko

  • далее проверяем установку командой — kldstat:

kldstat

Id Refs Address    Size     Name
1   12 0x80400000 b134e4   kernel
2    1 0x80f14000 195b4    if_re.ko
3    1 0x8c32e000 e350     isboot.ko
4    1 0x8c33d000 6a4f0    acpi.ko
5    1 0x92284000 123000   zfs.ko
6    1 0x923a7000 3000     opensolaris.ko
7    1 0x92843000 4000     geom_nop.ko
8    1 0x938cf000 9000     aio.ko
9    1 0xa8768000 13000    geom_vinum.ko

  • проверяем работу сетевой карты — должен быть получен адрес (при использовании DHCP).

Чтобы данный драйвер не «потерялся» после перезагрузки нужно его скопировать на системный диск, в большинстве случаев — другое usb-устройство, а также добавить соответствующую запись в loader.conf.

Т.к. системная (загрузочная) флешка монтируется в режиме «только для чтения», поэтому ее нужно перевести в режим чтения и записи. Перед этим определяем имя устройства командой df /cf, получаем такой вывод:

df /cf

Filesystem 1K-blocks  Used Avail Capacity  Mounted on
/dev/da0a      71062 64438  6624    91%    /cf

Теперь отмонтируем флешку с установленной NAS4Free и примонтируем ее в режиме для записи следующими командами:

umount /cf

mount -o rw /dev/da0a /cf

Далее копируем файл драйвера на загрузочную флешку, используем следующую команду:

cp /mnt/usb/if_re.ko /cf/boot/kernel

В заключении редактируем файл loader.conf, добавив следующую строчку:

if_re_load=»YES»

Напоминаю, чтобы внести изменения в содержание файла в редакторе vi— необходимо:

  • нажать клавишу «i» или «Insert»
  • для выхода из режима редактирования — «esc»
  • для сохранения внесенных изменений — «Shift+:» затем «wq» и нажать «Enter»

Стоит заметить — при обновлении ОС или сборки NAS4Free — данные операции по добавлению записи в файл loader.conf придется повторить.

Кстати, данные операции можно выполнять (после получения IP адреса), подключившись по SSH и/или в веб-интерфейсе: System|Advanced|loader.conf

Если принцип редактирование файла загрузки ОС FreeBSD вам не удобен, можно использовать следующий способ, доступный в веб-интерфейсе:

Переходим в раздел System|Advanced|Command scripts (Система|Дополнительно|Командный скрипт) и добавляем команду kldload /mnt/sysusb/if_re.ko Тип выбираем PostInit и сохраняем (предварительно нужно создать указанную папку и примонтировать туда /cf/boot/kernel, либо выполнять скрипт с /cf).

Настройка сетевых адаптеров и установка драйвера if_re.ko в NAS4Free завершены.