Измените MAC автоматически 16.04

Таким образом, я столкнулся с типичной проблемой eth0, названного чем-то еще (enpXsX) с systemd. Таким образом, я попытался создать файл/etc/udev/rules.d/10-network.rules. Это работает просто великолепно. Проблема состоит в том, что я должен сделать эту точную копию своего сервера, и использование SD-карты перемещают его между несколькими физическими серверами регулярно для тестирования. Поскольку 10-network.rules потребности MAC-адрес, это продолжает изменяться каждый раз, я включаю карту в новое устройство. Я создал сценарий, который изменяет его автоматически, и у меня есть выполненный как услуга (changeMAC.service) на, загружаются.

Этот сервис хорошо работает. К сожалению, несмотря на изменение MAC-адреса, прежде чем networking.service запускается, объединение в сеть всегда перестало работать. Чтобы заставить его работать, я должен перезагрузить. Мне нужен он для запуска правильно на первой начальной загрузке.

Используя systemd-анализируют график, я могу сказать, что changeMAC.service на самом деле завершается прежде networking.service. Я думал, что проблема могла бы состоять в том, что это должно запуститься раньше. Однако у меня в настоящее время есть одна SD-карта, где ей действительно удается запустить сразу. Но когда я беру то изображение и помещаю его на мой компьютер для выполнения в VirtualBox, оно возвращается к необходимости в перезагрузке. Я не могу найти различия между SD-картой и vhd.

Я также попытался использовать ifup, ifdown,/etc/init.d/networking перезапуск, systemctl запускают networking.service, чтобы вынудить сети переоценить свою ситуацию и видеть 10-network.rules. Первые три производят ошибки и не выполнятся, последнее выполнится, но networking.service снова не запустится.

Таким образом, я должен знать или как заставить changeMAC.service работать вовремя так, чтобы, кому бы ни нужно 10-network.rules, мог получить его, или я должен знать, как вызвать, кому бы ни нужно 10-network.rules для перезапуска, не перезагружая целую систему.

2
задан 3 January 2017 в 18:38

1 ответ

Можно добавить опцию к GRUB_CMDLINE_LINUX_DEFAULT в /etc/default/grub для выключения прогнозирующих имен.

GRUB_CMDLINE_LINUX_DEFAULT="net.ifnames=0" 

и можно сохранить другие опции на той строке. Таким образом, Вы не должны волноваться о наличии 10-network.rules файл с MAC-адресами набора в них.

Удостоверяются, что Вы обновляете личинку после изменения той строки перед перезагрузкой хоста.

sudo update-grub

Hope это помогает!

2
ответ дан 2 December 2019 в 03:43

Другие вопросы по тегам:

Похожие вопросы: