Не помню URL на этот документ.
Быстрая установка двух сетевых карт в Линуксе
Если у Вас RedHat www.redhat.com, то попробуйте для начала команду netconf: Зайдите в меню Basic Host Information и измените подразделы Adaptor1, Adaptor2...
Если у вас не получилось, или у вас не RedHat, то выберите один из двух возможных случаев, подходящих под вашу конфигурацию. Первый случай - когда у вас две одинаковые сетевые карты, а второй - когда разные.
В первом случае мы вынуждены использовать один модуль для двух сетевых карт. Так, например, для карт NE2000 мы должны использовать модуль ne. (На сетевые модули и модули к сетевым картам можете полюбоваться в директории: /lib/modules/'версия_системы'/net/ )
Во втором случае все очень просто.
Файл конфигурации модулей лежит в директории /etc и называется conf.modules. Собственно его мы и будем редактировать.
СЛУЧАЙ 1
Первый способ:
Предположим, что у вас уже стоит одна сетевая карта (для примера я взял NE2000), тогда часть файла conf.modules выглядит примерно так:
#--------------------
alias eth0 ne
options ne io=0x280 irq=3
#--------------------
где 0x280 - адрес, а 3 - прерывание карты. Теперь мы хотим добавить в систему еще одну карту NE2000. Для этого добавляем в файл conf.modules строку alias eth1 ne, а в строку options ne io=0x280 irq=3 после каждого параметра, через запятую, вписываем адрес и, соответственно, прерывание второй сетевой карточки. В результате мы получим:
#--------------------
alias eth0 ne
alias eth1 ne
options ne io=0x280,0x300 irq=3,15
#--------------------
где 0x280 и 0x300 соответственно адреса первой и второй сетевых карт, а 3 и 15, соответственно, их прерывания. Т.е. первая сетевая карта имеет адрес 0x280 и прерывание 3, а вторая адрес 0x300 и 15-ое прерывание. Причем первая карта будет привязана к eth0, а вторая к eth1.
Второй способ:
Пусть, для примера, у вас уже установлена сетевая карта NE2000-Compatible. До нашего вмешательста, часть файла conf.modules, в которой записаны опции для стоящей карточки, выглядит так же, как и в предыдущем способе:
#--------------------
alias eth0 ne
options ne io=0x280 irq=3
#--------------------
Давайте опять добавим строчку alias eth1 ne для привязывания модуля ne к устройству eth0, а между словом options и последующей строчкой напишем eth0 -o, что значит, что следующее слово после -o будет псевдоименем, а к ne припишем единицу, чтобы оно отличалось от ne. Теперь ne1 - это псевдоимя ne. После этих изменений файл будет выглядеть так:
#--------------------
alias eth0 ne
alias eth1 ne
options eth0 -o ne1 io=0x280 irq=3
#--------------------
где 0x280 и 3 адрес и прерывание соответственно. А теперь просто добавим аналогичную строку options для eth1:
#--------------------
alias eth0 ne
alias eth1 ne
options eth0 -o ne1 io=0x280 irq=3
options eth1 -o ne2 io=0x300 irq=15
#--------------------
Здесь слова ne1 и ne2 ничего не значат, вместо них можно написать буквы a и b, например. Главное, чтобы они отличались друг от друга и не совпадали с именами других модулей. Это объясняется тем, что ядро не может отличить ne от ne, а ne1 от ne2 может. Чтобы понять, что же это значит, после перезапуска системы запустите команду lsmod, которая сообщит о подсоединенных к ядру модулях:
[AZZ:/etc]# lsmod
Module Pages Used by
ne1 2 1 (autoclean)
ne0 2 1 (autoclean)
8390 2 [ne1 ne0] 0 (autoclean)
.........
Советую убрать из файла /etc/rc.d/rc.modules строку(и) для модуля(ей), которые прописаны в файле /etc/conf.modules.
СЛУЧАЙ 2.
Рассмотрим вариант, когда у вас имеются две разных сетевых карты, такие, что вы не можете использовать один модуль для обеих карт и не можете поступить, как описано выше. Собственно, здесь все совсем просто. Нужно просто добавить две строки в файл /etc/conf.modules, аналогичные строкам для первой карты. Если у вас было:
#--------------------
alias eth0 имя_модуля_для_первой_карты
options имя_модуля_для_первой_карты io=0x280 irq=3
#--------------------
то теперь станет:
#--------------------
alias eth0 имя_модуля_для_первой_карты
options имя_модуля_для_первой_карты io=0x280 irq=3
alias eth1 имя_модуля_для_второй_карты
options имя_модуля_для_второй_карты io=0x300 irq=15
#--------------------
где 0x280 и 0x300 соответственно адреса первой и второй сетевых карт, а 3 и 15, соответственно, их прерывания.
Вот, собственно, и все. Перезапускаете систему и следите за тем, что пишет система при запузке. Если все нормально, то вы увидите, как загружаются модули (будет написана версия, имя модуля, автор и т.д.). В случае, если система напишет что-то похожее на delaying eth1 initialization, ну или что-то аналогичное, тогда ищите ошибку...
PS Для привязывания IP адресов к сетевым картам используется команда ifconfig.
спасибо всем
по порядку: дистр РХ7.0 - глючит страшно, но так ПОКА надо
(посоветуйте хороший дистриб (нужна только текстовая часть (без Х)) жел-но с поддержкой русского))
перепробовал я почти всё енто, и стала вот какая задача: вторая карта - PowerNic..... (но она хавает ne-модуль)
так вот она PnР-шная, делаю pnpdump > iaspnp.conf, подправляю адресок , прерывание, '#'. пишу в modules.conf :
alias eth0 ne
alias eth1 ne
options ne io=0x280,0x300 irq=3,15
в netconf включаю вторую карточку, перезапускаю
на PnP - матерится а eth1 - без проблем
(можно сделать наоборот, но чтобы вообще не ругался - не могу)
есть соображения?