Как переименовать сетевой интерфейс в 15.10?
Я решил сделать чистую установку 15.10, и в результате нужно переустановить MATLAB. Лицензии MATLAB привязаны к аппаратному адресу eth0.
Моя карта Ethernet указана как enp1s0, и мне нужно переименовать ее в eth0. только вот указан в /etc/network/interfaces
, а также /etc/udev/rules.d/70-persistent-net.rules
не существует, поэтому я не уверен, с чего начать.
5 ответов
Мое решение для этого было создать файл /etc/udev/rules.d/10-rename-network.rules
с содержанием:
SUBSYSTEM=="net", ACTION=="add", ATTR{address}=="ff:ff:ff:ff:ff:ff", NAME="eth0"
У меня была такая же проблема и добавление файлов в /etc/udev/rules.d/
не помогло. Похоже, проблема заключается в использовании предсказуемых имен сетевых интерфейсов, как описано здесь. Чтобы создать собственную схему именования вручную, т. Е. Назвать ваше устройство "eth0" для MATLAB, вы можете создать свою собственную .link
файлы в /etc/systemd/network/
как описано здесь.
В частности, я создал файл /etc/systemd/network/10-eth.link
с содержанием
[Match]
MACAddress=ff:ff:ff:ff:ff:ff
[Link]
Name=eth0
замена ff:ff:ff:ff:ff:ff
с MAC-адресом устройства, которое я хотел изменить. После перезагрузки имя было по желанию.
Если по какой-либо причине ответ, предложенный @zab, не работает для вас, вы также можете отключить эту схему именования, как здесь. Но метод, предложенный @zab, потенциально безопаснее
Я просто не включил biosdevname=0 в аргумент командной строки, он по умолчанию выключен.
Следующие шаги должны быть сделаны:
$ sudo nano /etc/default/grub
В строке GRUB_CMDLINE_LINUX добавьте net.ifnames=0
GRUB_CMDLINE_LINUX="[previous parameters] net.ifnames=0"
Затем сгенерируйте новый файл grub:
$ sudo grub-mkconfig -o /boot/grub/grub.cfg
По окончании перезагрузите систему.
У меня была проблема с сервером 16.04 (минимальная) на Raspberry Pi 3, и ни один из опубликованных ответов не помог. Решением проблемы было отключение предсказуемых имен сетевых интерфейсов, как описано здесь: https://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames/
запустив эту команду:
ln -s /dev/null /etc/udev/rules.d/80-net-setup-link.rules
Это работало для меня на сервере 16.04, поскольку eno1 показывал, когда я делал ifconfig -a
, Я должен был вызвать интерфейс как ifconfig eno1 up
Затем я сделал следующее:
vi /etc/udev/rules.d/10-network.rules
SUBSYSTEM=="net", ACTION=="add", ATTR{address}=="ff:ff:ff:ff:ff:ff", NAME="eth0"