Нумерация сетевых плат
Сбросилась нумерация сетевух с (eth1, eth2 на eth0, eth1). Всё бы ничего, они работают, жить можно, но
1) не очень хочется перенастраивать iptables (эта машина служит домашним роутером), dnsmasq и т.п.
2) очень хочется понять почему так и как следствие поправить обратно.
Произошло после тотального апдейта (не обновлял чуть менее года) - обновил gcc, emerge -eav system и т.д. На форуме нашёл несколько решённых тем с редактированием/удалением файла /etc/udev/rules.d/70-persistent-net.rules, у меня это ни к чему не привело, при чём файл даже не восстановился после ребута, что меня совсем сбило с толку.
Возможно дело в том, что ядро у меня собрано genkernel-ем и используется initramfs. Ещё мне показалось странным что в rc-status eth1 у меня поднялся не в разделе default, как должен, а в hotplugged (ну а eth2 нигде не поднялся, т.к. он сейчас eth0, а ссылку в /etc/init.d я пока есть надежда всё поправить не менял)
В общем глаза уже на лбу красные, а куда копать перестал понимать =). Заранее спасибо отозвавшимся.
- Для комментирования войдите или зарегистрируйтесь
:)
Смотри в /etc/udev/rules.d/70-persistent-net.rules
И пропиши соответствующие MAC адреса соответствующим интерфейсам.
Так я же написал что ни
Так я же написал что ни редактирование, ни удаление этого файла ни к чему не привело. Когда я первый разе его увидел, там были 3 интерфейса - eth0 и eth2 с одинаковыми маками но разными диапазонами адресов в памяти, и eth1. Сначала я закоментировал строку с eth0, ребутнулся - всё как было. Потом я вообще удалил этот файл, зная что он должен восстановиться. Ребутнулся - всё как было, а файл не восстановился :).
На данный момент мой вывод - сетевухи у меня определяются не udev-ом, а mdev-ом, который запускается с ramfs, во время загрузки (при загрузке системы на начальном этапе вижу: "Activation mdev..."), и копаться нужно в mdev-е. Но вывод вполне возможно ошибочный, да и не представляю как mdev ковырять т.к. вообще слабо понимаю принцип и этапы загрузки системы с genkernel-евским ядром и initramfs. Собственно потому и пишу тут...
ядро не обновляли? тока
ядро не обновляли? тока систему?
вот это зря... создавайте новый теперь :)
Нет, ядро не
Нет, ядро не обновлял.
На счёт него написал выше, в ответе Agressor-у. Похоже udev и этот файл в данном случае не используются.
Не пробовали # udevadm
Не пробовали
?
Теоретически, после этой команды 70-persistent-net.rules должен быть создан, если его нет. Во всяком случае - только что удалил у себя 70-persistent-net.rules, запустил указанную команду и файл восстановился. Вообще, если что-то не так с именованием сетевых устройств, нужно их все остановить, отредактировать 70-persistent-net.rules в соответствии с пожеланиями, и запустить упомянутую выше команду. Если все правильно, то имена интерфейсов поменяются сразу.
Благодарствую :)
Вы только что подсказали мне более удобный способ, спасибо :) А то я раньше комп перезагружал, чтобы новые имена применились
P.S> сори за оффтоп, но выразить благодарность автору - это для меня святое