CentOS 7 - Переименование сетевого интерфейса без перезагрузки

Не могли бы вы предоставить больше деталей. Например, таблицу разделов, насколько удобно вам работать с Grub и т.д.

Возможно, вы захотите установить root (не boot) на (hd0, x)

x - 6 подразумевает, что это второй логический диск в расширенном разделе на вашем жестком диске, это верно?

Если у вас есть возможность, запишите CD / сделайте загрузочный USB (быстрее!) и загрузите с него Ubuntu или Mint (или ваш любимый дистрибутив Linux), затем вы можете chroot в linux-раздел вашего жесткого диска и исправить Grub оттуда. Это восстановит Grub так, как если бы вы в настоящее время запускали Linux с этого жесткого диска.

Без более подробной информации трудно дать вам больше указаний.

Надеюсь, это прольет свет на вашу проблему.

24
06.01.2016, 06:29
2 ответа
ip link set ens33 down
ip link set ens33 name eth0
ip link set eth0 up

mv /etc/sysconfig/network-scripts/ifcfg-{ens33,eth0}

sed -ire "s/NAME=\"ens33\"/NAME=\"eth0\"/" /etc/sysconfig/network-scripts/ifcfg-eth0

sed -ire "s/DEVICE=\"ens33\"/NAME=\"eth0\"/" /etc/sysconfig/network-scripts/ifcfg-eth0

MAC=$(cat /sys/class/net/eth0/address)

echo -n 'HWADDR="'$MAC\" >> /etc/sysconfig/network-scripts/ifcfg-eth0
6
27.01.2020, 19:40

Я попробовал описанное выше с Vagrant/VirtualBox и ansible, но почему-то это вообще не сработало в моей среде разработки.

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

Я добавил следующие правила в/etc/udev/rules.d/60-persistent-net.rules(на основе:https://access.redhat.com/solutions/112643)

Моя цель состояла в том, чтобы дать интерфейсу конкретное имя на основе адреса PCI.

Пример:

ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:09.0", NAME:="int0"
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:00:10.0", NAME:="ext0"

После добавления этих правил я выполнил следующие команды:

ip link set eth0 down
udevadm control --reload-rules
udevadm trigger
ip link set int0 up

Сообщение об ошибке Cannot find device "int0"в команде ip link set * up. А в /var/log/messagesзаметил следующие сообщения

Aug 16 17:08:41 localhost ansible-command: Invoked with creates=None executable=None _uses_shell=True strip_empty_ends=True _raw_params=ip link set eth0 down && udevadm control --reload-rules && udevadm trigger && ip link set int0 up#012 removes=None argv=None warn=True chdir=None stdin_add_newline=True stdin=None
Aug 16 17:08:41 localhost NetworkManager[6989]: <info>  [1565975321.5971] device (eth6): state change: disconnected -> unavailable (reason 'carrier-changed', sys-iface-state: 'managed')
Aug 16 17:08:41 localhost systemd-udevd: Network interface NamePolicy= disabled on kernel command line, ignoring.

Но следующее сработало, получив доступ к виртуальной машине через VirtualBox и выполнив следующие команды, чтобы удалить и повторно -добавить модуль ядра.

rmmod e1000 
modprobe e1000

Я нашел это в следующей теме:https://www.centos.org/forums/viewtopic.php?t=54695

Странная вещь, которую я заметил, заключалась в том, что lsmodдает мне (примечаниеUsed by)

[vagrant@node-01 ~]$ lsmod
Module                  Size  Used by
e1000                 137586  0 
1
27.01.2020, 19:40

Теги

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