A renomeação de dispositivos de rede do virtio no Ubuntu 16.04 não está funcionando

4

Estou tentando renomear alguns dispositivos de virtio ethernet em uma VM Ubuntu 16.04. Eu fiz isso com sucesso muitas vezes em sistemas não-Ubuntu com interfaces físicas e sistemas Ubuntu mais antigos. No entanto, apesar de seguir o conselho de Renomeando a interface de rede no Ubuntu 16.04 com o systemd falha e vendo Nomenclatura persistente da interface de rede e kvm ainda não está sendo renomeado. Isso está em uma VM openstack, mas isso realmente não deve importar muito.

Eu tentei usar o udev (minha abordagem normal):

SUBSYSTEM=="net", ACTION=="add", ATTR{address}=="fa:16:3e:bf:be:d0", NAME="enet"
SUBSYSTEM=="net", ACTION=="add", ATTR{address}=="fa:16:3e:64:fb:74", NAME="snet"

Eu tentei usar arquivos systemd.link (com e sem 99-default.link sendo vinculado a / dev / null):

[Match]
MACAddress=fa:16:3e:bf:be:d0

[Link]
Name=enet

e

[Match]
MACAddress=fa:16:3e:64:fb:74

[Link]
Name=snet

Eu tentei com links udev e systemd. Eu certamente corri sudo update-initramfs -u

Tanto o systemd quanto o udev reconhecem o novo nome em alguma extensão

systemctl diz:

  sys-devices-pci0000:00-0000:00:03.0-virtio0-net-ens3.device       loaded active plugged   Virtio network device
  sys-devices-pci0000:00-0000:00:03.0-virtio0-net-enet.device       loaded active plugged   Virtio network device
  sys-devices-pci0000:00-0000:00:04.0-virtio1-net-ens4.device       loaded active plugged   Virtio network device
  sys-devices-pci0000:00-0000:00:04.0-virtio1-net-snet.device       loaded active plugged   Virtio network device

udevadm info /sys/class/net/ens3

P: /devices/pci0000:00/0000:00:03.0/virtio0/net/ens3
E: DEVPATH=/devices/pci0000:00/0000:00:03.0/virtio0/net/ens3
E: ID_BUS=pci
E: ID_MODEL_FROM_DATABASE=Virtio network device
E: ID_MODEL_ID=0x1000
E: ID_NET_DRIVER=virtio_net
E: ID_NET_LINK_FILE=/etc/systemd/network/80-etr-net-names.link
E: ID_NET_NAME_MAC=enxfa163ebfbed0
E: ID_NET_NAME_PATH=enp0s3
E: ID_NET_NAME_SLOT=ens3
E: ID_PATH=virtio-pci-0000:00:03.0
E: ID_PATH_TAG=virtio-pci-0000_00_03_0
E: ID_PCI_CLASS_FROM_DATABASE=Network controller
E: ID_PCI_SUBCLASS_FROM_DATABASE=Ethernet controller
E: ID_VENDOR_FROM_DATABASE=Red Hat, Inc
E: ID_VENDOR_ID=0x1af4
E: IFINDEX=2
E: INTERFACE=ens3
E: SUBSYSTEM=net
E: SYSTEMD_ALIAS=/sys/subsystem/net/devices/enet /sys/subsystem/net/devices/ens3
E: TAGS=:systemd:
E: USEC_INITIALIZED=1532927

Mas, de alguma forma, o dispositivo mantém o nome do ensX. Eu não estou executando o NetworkManager

2: ens3: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/ether fa:16:3e:bf:be:d0 brd ff:ff:ff:ff:ff:ff
3: ens4: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/ether fa:16:3e:64:fb:74 brd ff:ff:ff:ff:ff:ff
    
por Seth Robertson 09.02.2017 / 01:56

1 resposta

0

Você pode estar com sorte porque o Linux Kernel versão 4.9.9 foi lançado na quinta-feira (9/9/2017) com melhorias no Virtio entre muitos outros. Você pode ler sobre isso aqui ( softpedia.com - O kernel Linux 4.9.9 foi lançado com muitos drivers atualizados x86 ).

Para instalar a última versão do kernel, você pode seguir as instruções aqui ( Como faço para atualizar o kernel para a última versão da linha principal? ) mas substituo 4.9.8 pela 4.9.9.

Além disso, há melhorias para os drivers de exibição Intel i915 e AMDGPU e drivers Nouveau para placas nVidia. Qualquer pessoa com erros insolúveis nessas áreas deve considerar seriamente a instalação da nova versão do Kernel do Linux.

    
por WinEunuuchs2Unix 12.02.2017 / 17:58