Как переименовать или изменить имена сетевых интерфейсных плат, заданных уровнем аппаратной абстракции? (Ubuntu 14.04.3)
Я создал работающую систему с использованием Systemback на "компьютере A" и без проблем установил ее на "компьютере B", но единственное неудобство заключается в том, что HAL дал моим сетевым интерфейсным картам имена eth1
в проводной интерфейс и wlan2
к беспроводному интерфейсу в "компьютере B". У меня много скриптов и псевдонимов в жестком коде (ПЛОХАЯ ПРАКТИКА, я знаю).
Systemback создал точную копию моей конфигурации в "компьютере A", поэтому в "компьютере B" он не смог раздать eth0
а также wlan0
потому что эти два имени уже использовались.
Я знаю, как и легко заменить проблемный текст sed
во всех сценариях и псевдонимах, но я хотел бы знать, как я могу изменить эти имена, данные HAL.
1 ответ
Вот что произошло: когда вы выполнили первоначальную настройку в системе A, ваш компьютер зарезервировал имена eth0
а также wlan0
для конкретных устройств, которые вы имели в этой машине.
Когда вы перешли в систему B, новые сетевые устройства были найдены и (как вы упомянули) переименованы, чтобы не вступать в противоречие с этими более ранними определениями eth0
а также wlan0
,
Это оригинальное отображение имен хранится в:
/etc/udev/rules.d/70-persistent-net.rules
Если вы удалите этот файл, ваша следующая загрузка начнется без "зарезервированных" имен для этих сетевых устройств в системе A, и вы получите eth0 и wlan0 обратно.
Если они обнаружены в другом порядке (скажем, если у вас было два ethX
устройств в системе B, и вы ожидаете их в другом порядке), вы можете отредактировать NAME=
определения в этом файле, чтобы удовлетворить ваши собственные требования к именованию.