Eu criei uma VM usando vmbuilder
e não consegui exibir a interface de rede. Consegui fazer login na VM usando o Virtual Machine Manager e vi que a interface em /etc/network/interfaces
era eth0
, mas em networkctl
era ens3
(um nome de interface de rede previsível). Eu olhei para /var/log/syslog
e encontrei
Oct 17 19:26:43 servername kernel: [ 1.314794] virtio_net virtio0 ens3: renamed from eth0
Oct 17 19:26:43 servername ifup[394]: Cannot find device "eth0"
Oct 17 19:26:43 servername ifup[394]: Failed to bring up eth0.
Oct 17 19:26:43 servername systemd[1]: networking.service: Main process exited, code=exited, status=1/FAILURE
Oct 17 19:26:43 servername systemd[1]: Failed to start Raise network interfaces.
Oct 17 19:26:43 servername systemd[1]: networking.service: Unit entered failed state.
Oct 17 19:26:43 servername systemd[1]: networking.service: Failed with result 'exit-code'.
entre as outras entradas de log.
As seguintes informações estão vazias ou não existem:
-
GRUB_CMDLINE_LINUX=""
em /etc/default/grub
(e GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
)
-
/etc/udev/rules.d/70-persistent-net.rules
-
/lib/udev/rules.d/75-persistent-net-generator.rules
Aqui estão as interfaces:
$ ls -l /sys/class/net
total 0
lrwxrwxrwx 1 root root 0 Oct 17 20:36 ens3 -> ../../devices/pci0000:00/0000:00:03.0/virtio0/net/ens3
lrwxrwxrwx 1 root root 0 Oct 17 20:36 lo -> ../../devices/virtual/net/lo
Aqui está a linha de comando vmbuilder
que usei:
sudo vmbuilder kvm ubuntu --suite xenial --templates /homes/administrator/vmfiles \
--hostname servername --dest ./servername --rootsize 200000 --mem 16384 \
--ip 1.1.1.1 --dns 1.1.1.1 --gw 1.1.1.1 --bridge br0 \
--network=bridge:br0 --timezone=America/Chicago --libvirt qemu:///system \
--user USER --name USER --pass PASSWORD \
--ssh-user-key /homes/USER/.ssh/authorized_keys \
--addpkg linux-image-generic --addpkg openssh-server \
--addpkg unattended-upgrades --addpkg python-apt --copy vmfiles/copyspecs
Como teste, alterei /etc/network/interfaces
para me referir a ens3
e consegui abrir a interface.
Estou bem com o uso de nomes previsíveis, mas como resolvo essa incompatibilidade?