понедельник, 25 октября 2010 г.

«Костыль» для сетевых устройств

Все команды выполнял от прав пользователя — root.
На сервере установлены 3 сетевые платы Davicom. После установки базовой конфигурации Lenny сетевые карты работают секунд 15 и отваливаются.
Команда 'dmesg | grep “eth”' показывает ошибку типа — tulip_stop_rxtx() failed (CSR5 0xf0260000 CSR6 0xb3862002).
Оказалось, что по-умолчанию установились два драйвера — tulip и dmfe. Причем рабочим драйвером стал считаться tulip.
Решил я данную проблему вбиванием «костыля» в систему. А именно:
      1. Дописал строчку 'dmfe' в /etc/modules
      2. Дописал 'tulip' в /etc/modprobe.d/blacklist
      3. Написал скрипт который удаляет драйвер tulip и заменяет его на dmfe

'nano /etc/init.d/LAN' ниже преведены строчки кода:

#!/bin/sh
### BEGIN INIT INFO
# Provides: LAN
# Required-Start:
# Required-Stop:
# Default-Start: 3
# Default-Stop: 0 6
# Short-Description: Run /etc/init.d/LAN if it exist
### END INIT INFO
echo ""
echo "LAN reload configured by Dethroner"
/etc/init.d/networking stop
/sbin/rmmod tulip
sbin/rmmod dmfe
/sbin/modprobe dmfe
/etc/init.d/networking start
echo -n "LAN reload done"
echo “”
      1. Делаю скрипт исполняемым - 'chmod +x /etc/init.d/LAN'
      2. Добавляю в автозагрузку ссылку - 'ln -s /etc/init.d/LAN /etc/rc3.d/S99LAN'