Я змінив назву свого eth1
інтерфейсу на eth0
. Як udev
зараз попросити перечитати конфігурацію?
service udev restart
і
udevadm control --reload-rules
не допоможе. То чи існує якийсь дійсний спосіб, крім перезавантаження? (так, перезавантаження допомагає в цьому питанні)
так, я знаю, що я повинен передбачити команди
sudo
, але будь-який, який я розмістив вище, нічого не змінює уifconfig -a
виході: я все одно бачуeth1
, ніeth0
.Я щойно змінив
NAME
властивість рядка udev-rule. Не знаю жодної причини, щоб це було неефективним.
Немає жодної помилки у виконанні обох команд, які я розмістив вище, але вони просто не змінюють фактичне ім'я інтерфейсу у ifconfig -a
висновку. Якщо я виконую перезавантаження - то назва інтерфейсу змінюється, як очікувалося.
Для цілей розробки я пишу сценарій, який клонує віртуальні машини (керовані VirtualBox) і попередньо налаштовує їх.
Тому я виконую команду клонувати VM, запускати її і доки змінений MAC мережевого інтерфейсу - udev
додає друге правило до стійких правил мережі. Одразу після першого завантаження машини є 2 правила:
eth0
, якого не існує до тих пір, поки він існував у вихідному MAC-образі VMeth1
, яке існує, але вся конфігурація у всіх файлах стосуєтьсяeth0
, тому для мене це не так добре
Тож я з sed
видаленням рядка з eth0
(він застарілий і марний у клонованому зображенні) і замінюю eth1
на eth0
. Так в даний час у мене є дійсне постійне правило, але є ще eth1
в /dev
.
Проблема: я не хочу перезавантажувати машину (це займе інший час, що не дуже добре при складанні VM-сцени), а просто хочу /dev
переобладнати якусь команду, щоб у мене був готовий до використання VM без будь-яких перезавантажень.
udev
динамічно генерує ваші пристрої в /dev
. Якщо перезапустити його, він відновить їх відповідно до його правил. Зміни, внесені безпосередньо до них, взагалі не є постійними. Схоже, перезапуск udev
працює нормально, але ви просто неправильно змінили назви пристроїв.
udev
додає (не змінює) нові правила лише у тому випадку, якщо він не може знайти одне для певного пристрою. Якщо є правило, яке відповідає - воно просто дотримується його без змін.
eth1
доeth0
? Ви просто перейменували файл пристрою? Якщо це так, це не ефективний спосіб зробити це (і слід очікувати, що зміни будуть повернені вдалим перезапускомudev
демона). Якщо ви використовували якийсь інший метод, будь ласка, опишіть його докладно, а також надайте повний і точний текст будь-яких повідомлень про помилки, які ви бачите під час запуску команд, які ви пробували (для перезапускуudev
демона або перезавантаження його правил). Ви можете відредагувати своє запитання, щоб надати цю інформацію.