В общем случае допустим, что виртуальный адаптер для eth0 был удален и заменен другим. Либо из-за клонирования, либо из-за недавнего всплеска конфликтов MAC-адресов. [Да сыпь из них.]
Обычно я просто rm /etc/udev/rules.d/70-persistent-net-rules
и убедитесь, что ничего в / etc / sysconfig / network * не содержит ссылки на MAC-адрес и перезагрузка, но это Linux и должен быть способ избежать перезагрузки.
Есть ли команда, которую я могу запустить, чтобы получить новую сетевую карту?
В дополнение к ответу @dawud ниже я столкнулся с проблемой на моей тестовой виртуальной машине, где она уже загрузилась с новым устройством на месте и получила имя eth1
в таком случае udevadm
не похоже, чтобы «освободить» устройство. В этом случае я сделал следующее:
/etc/iftab
с линией eth0 mac ##:##:##:##:##:##
подставив MAC-адрес. ifrename
похоже, не нравится, когда этот файл не существует / содержит имя интерфейса назначения.ifrename -i eth1 -n eth0
service network restart
и eth0 запустился нормально.rm /etc/iftab
так что MAC на одно место меньше.Вы можете сделать это, используя udevadm trigger
Вам по-прежнему необходимо удалить постоянные правила и перезапустить сетевую службу.
Для меня приведенная ниже последовательность команд сработала, как ожидалось.
Я внес изменения в /etc/udev/rules.d/70-persistent-net.rules
изменить eth
номер и перезагружать их без перезагрузки.
/etc/init.d/networking stop
/etc/init.d/udev stop
udevadm control --reload-rules
/etc/init.d/udev start
/etc/init.d/networking start
После этого он успешно загрузился без перезагрузки машины.
Любые предложения или рекомендации по этому поводу приветствуются, я обнаружил это самостоятельно, прочитав страницы MAN.