Файл /etc/udev/rules.d/70-persistent-net.rulesавтоматично генерується в системі Linux з udev, якщо його не існує, під час перезавантаження. Але я хотів би знати, як створити цей файл правил (за допомогою команди) без перезавантаження сервера.
Я деякий час гуляв навколо і виявив, що файл правил генерується цим сценарієм:
/lib/udev/write_net_rules
Однак запустити цей скрипт із командного рядка неможливо, оскільки (я припускаю) його потрібно запустити udev, при цьому деякі змінні середовища встановлені належним чином. Почавши це вручну, друкується повідомлення про помилку "відсутній $ INTERFACE". Навіть якщо я встановив змінну env INTERFACE = eth0 перед початком сценарію, він все одно надрукує помилку "відсутня допустима відповідність". Не кажучи вже про те, що у мене є два інтерфейси ( eth0і eth1), і я хочу, щоб файл правил був створений для обох.
Я також думав викликати подібні події udev, сподіваючись, що це почне сценарій із самого udev, але нічого не зміниться:
udevadm trigger --type=devices --action=change
Отже, хтось знає, як відновити стійкі чисті правила у файлі /etc/udev/rules.d/70-persistent-net.rulesбез перезавантаження?
70-persistent-net.rulesані /lib/udev/write_net_rulesсценарію. Тому я не можу перевірити, але, мабуть, $INTERFACEзмінна встановлена в самому сценарії. Швидше за все, це передається як аргумент. Чи можете ви показати нам вміст сценарію?
$INTERFACEзмінну. Є набагато більше змінних, які просто використовуються, ніколи не декларуються. Це тому, що його називають udev, а udev встановлює всі env змінні, перш ніж запускати скрипт під час завантаження.