Я создал использование VM vmbuilder
и этому не удалось поднять сетевой интерфейс. Я смог войти в VM, использующий Диспетчера виртуальных машин, и видел что интерфейс в /etc/network/interfaces
был eth0
, но в networkctl
был ens3
(Предсказуемое Название Сетевого интерфейса). Я смотрел на /var/log/syslog
и найденный
17 октября ядро имени сервера 19:26:43: [1.314794] virtio_net virtio0 ens3: переименованный от eth0
17 октября 19:26:43 имени сервера ifup [394]: не Может найти устройство "eth0"
17 октября 19:26:43 имени сервера ifup [394]: Не удалось поднять eth0.
17 октября 19:26:43 имени сервера systemd [1]: networking.service: Основной процесс, из которого выходят, code=exited, status=1/FAILURE
17 октября 19:26:43 имени сервера systemd [1]: Не удалось запустить сетевые интерфейсы Повышения.
17 октября 19:26:43 имени сервера systemd [1]: networking.service: Единица ввела состояние отказа.
17 октября 19:26:43 имени сервера systemd [1]: networking.service: Отказавший с результатом 'код выхода'.
среди других записей в журнале.
Следующее пусто или не существует:
GRUB_CMDLINE_LINUX=""
в /etc/default/grub
(и GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
)/etc/udev/rules.d/70-persistent-net.rules
/lib/udev/rules.d/75-persistent-net-generator.rules
Вот интерфейсы:
$ 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
Вот vmbuilder
командная строка я использовал:
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
Как тест, я изменился /etc/network/interfaces
относиться к ens3
и я смог поднять интерфейс.
Все хорошо с использованием Предсказуемых Имен, но как я решаю это несоответствие?
В поиске журнала, что vmbuilder
созданный в /tmp
, я нашел, что он создал /etc/network/interfaces
использование шаблона от /etc/vmbuilder/ubuntu/interfaces.tmpl
, который вслепую использует eth0
(или dhcp
, если это было выбрано вместо IP).
Это, кажется, ошибка.