More checking... on Trusty, the file is generated by
/lib/udev/write_net_rules:

bladernr@sulaco:~$ cat /etc/udev/rules.d/70-persistent-net.rules 
# This file was automatically generated by the /lib/udev/write_net_rules
# program, run by the persistent-net-generator.rules rules file.

And checking my Xenial system (one of them) write_net_rules does not exist:
bladernr@galactica:/etc/udev/rules.d$ ls /lib/udev
ata_id             hplj1000   hpljP1008         iphone-set-info          scsi_id
cdrom_id           hplj1005   hpljP1505         ipod-set-info            
udev-add-printer
collect            hplj1018   hpljP1505n        mtd_probe                
udev-configure-printer
console-setup-tty  hplj1020   hwclock-set       mtp-probe                
usb_modeswitch
hdparm             hpljP1005  hwdb.bin          pcmcia-check-broken-cis  v4l_id
hid2hci            hpljP1006  hwdb.d            pcmcia-socket-startup
hotplug.functions  hpljP1007  ifupdown-hotplug  rules.d


Now, comparing the packages installed in the two that include udev in the name:

Trusty:
bladernr@sulaco:~$ dpkg -l |grep udev|awk '{print $2 "   " $3}'
gir1.2-gudev-1.0   1:204-5ubuntu20.15
libgudev-1.0-0:amd64   1:204-5ubuntu20.15
libgudev-1.0-0:i386   1:175-0ubuntu9
libudev0:amd64   175-0ubuntu13
libudev0:i386   175-0ubuntu13
libudev1:amd64   204-5ubuntu20.15
libudev1:i386   204-5ubuntu20.15
python3-pyudev   0.16.1-2build1
system-config-printer-udev   1.4.3+20140219-0ubuntu2.6
udev   204-5ubuntu20.15


Xenial:
bladernr@galactica:/etc/udev/rules.d$ dpkg -l |grep udev |awk '{print $2 "   " 
$3}'
gir1.2-gudev-1.0:amd64   1:230-2
libgudev-1.0-0:amd64   1:230-2
libudev1:amd64   228-6ubuntu1
system-config-printer-udev   1.5.7+20150819-0ubuntu5
udev   228-6ubuntu1

the manpage for udev in Xenial says:
RULES FILES
       The udev rules are read from the files located in the system rules 
directory
       /lib/udev/rules.d, the volatile runtime directory /run/udev/rules.d and 
the local
       administration directory /etc/udev/rules.d. All rules files are 
collectively sorted and

SO looking at /lib/udev/rules.d for Trusty:
bladernr@sulaco:~$ ls /lib/udev/rules.d/ |grep net
40-bridge-network-interface.rules
40-vlan-network-interface.rules
75-net-description.rules
75-persistent-net-generator.rules
77-mm-huawei-net-port-types.rules

and Xenial:
bladernr@galactica:/etc/udev/rules.d$ ls /lib/udev/rules.d/ |grep net
75-net-description.rules
77-mm-huawei-net-port-types.rules
80-net-setup-link.rules

Xenial is missing one. If this is intentional, how does one go about
setting persistent network names?

-- 
You received this bug notification because you are a member of Ubuntu
Touch seeded packages, which is subscribed to systemd in Ubuntu.
https://bugs.launchpad.net/bugs/1544747

Title:
  No udev persistent rules in Xenial = strange device names for NICs

Status in systemd package in Ubuntu:
  New

Bug description:
  Fresh install of Xenial on an intel NUC with 1 onboard GigE and one
  USB GigE NIC.

  I was setting up networking for MAAS and discovered that the device
  names were ridiculous:

  bladernr@critical-maas:/etc/udev$ ifconfig |grep HWaddr
  eno1      Link encap:Ethernet  HWaddr ec:a8:6b:fb:9f:66  
  enx8cae4cff4099 Link encap:Ethernet  HWaddr 8c:ae:4c:ff:40:99  

  In the previous Trusty install on this NUC with the same USB dongle,
  they were named eth0 and em1.  The predictable standard device names.

  Looking at udevadm:
  P: /devices/pci0000:00/0000:00:19.0/net/eno1
  E: DEVPATH=/devices/pci0000:00/0000:00:19.0/net/eno1
  E: ID_BUS=pci
  E: ID_MM_CANDIDATE=1
  E: ID_MODEL_FROM_DATABASE=82579LM Gigabit Network Connection
  E: ID_MODEL_ID=0x1502
  E: ID_NET_DRIVER=e1000e
  E: ID_NET_LABEL_ONBOARD=en L1U1
  E: ID_NET_LINK_FILE=/lib/systemd/network/99-default.link
  E: ID_NET_NAME_MAC=enxeca86bfb9f66
  E: ID_NET_NAME_ONBOARD=eno1
  E: ID_NET_NAME_PATH=enp0s25
  E: ID_OUI_FROM_DATABASE=ELITEGROUP COMPUTER SYSTEMS CO., LTD.
  E: ID_PATH=pci-0000:00:19.0
  E: ID_PATH_TAG=pci-0000_00_19_0
  E: ID_PCI_CLASS_FROM_DATABASE=Network controller
  E: ID_PCI_SUBCLASS_FROM_DATABASE=Ethernet controller
  E: ID_VENDOR_FROM_DATABASE=Intel Corporation
  E: ID_VENDOR_ID=0x8086
  E: IFINDEX=2
  E: INTERFACE=eno1
  E: SUBSYSTEM=net
  E: SYSTEMD_ALIAS=/sys/subsystem/net/devices/eno1
  E: TAGS=:systemd:
  E: USEC_INITIALIZED=5400250

  P: 
/devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.5/2-1.5:1.0/net/enx8cae4cff4099
  E: 
DEVPATH=/devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.5/2-1.5:1.0/net/enx8cae4cff4099
  E: ID_BUS=usb
  E: ID_MM_CANDIDATE=1
  E: ID_MODEL=AX88178
  E: ID_MODEL_ENC=AX88178\x20
  E: ID_MODEL_FROM_DATABASE=AX88178
  E: ID_MODEL_ID=1780
  E: ID_NET_DRIVER=asix
  E: ID_NET_LINK_FILE=/lib/systemd/network/90-mac-for-usb.link
  E: ID_NET_NAME=enx8cae4cff4099
  E: ID_NET_NAME_MAC=enx8cae4cff4099
  E: ID_NET_NAME_PATH=enp0s29u1u5
  E: ID_OUI_FROM_DATABASE=Plugable Technologies
  E: ID_PATH=pci-0000:00:1d.0-usb-0:1.5:1.0
  E: ID_PATH_TAG=pci-0000_00_1d_0-usb-0_1_5_1_0
  E: ID_REVISION=0001
  E: ID_SERIAL=ASIX_Elec._Corp._AX88178_000002
  E: ID_SERIAL_SHORT=000002
  E: ID_TYPE=generic
  E: ID_USB_CLASS_FROM_DATABASE=Vendor Specific Class
  E: ID_USB_DRIVER=asix
  E: ID_USB_INTERFACES=:ffff00:
  E: ID_USB_INTERFACE_NUM=00
  E: ID_USB_SUBCLASS_FROM_DATABASE=Vendor Specific Subclass
  E: ID_VENDOR=ASIX_Elec._Corp.
  E: ID_VENDOR_ENC=ASIX\x20Elec.\x20Corp.
  E: ID_VENDOR_FROM_DATABASE=ASIX Electronics Corp.
  E: ID_VENDOR_ID=0b95
  E: IFINDEX=3
  E: INTERFACE=enx8cae4cff4099
  E: SUBSYSTEM=net
  E: SYSTEMD_ALIAS=/sys/subsystem/net/devices/enx8cae4cff4099 
/sys/subsystem/net/devices/enx8cae4cff4099
  E: TAGS=:systemd:
  E: USEC_INITIALIZED=8700146

  And finally, looking in /etc/udev:
  bladernr@critical-maas:/etc/udev$ sudo ls -ra /etc/udev/*
  /etc/udev/udev.conf

  /etc/udev/rules.d:
  ..  .

  /etc/udev/hwdb.d:
  ..  .

  There are NO rules at all in udev for persistent names.  Not even some
  samples and defaults.

  Looking at a completely different Xenial system with a single GigE NIC:
  bladernr@galactica:~$ ifconfig
  enp2s0    Link encap:Ethernet  HWaddr 40:8d:5c:51:5b:0d  

  P: /devices/pci0000:00/0000:00:1b.2/0000:02:00.0/net/enp2s0
  E: DEVPATH=/devices/pci0000:00/0000:00:1b.2/0000:02:00.0/net/enp2s0
  E: ID_BUS=pci
  E: ID_MM_CANDIDATE=1
  E: ID_MODEL_FROM_DATABASE=Killer E220x Gigabit Ethernet Controller
  E: ID_MODEL_ID=0xe091
  E: ID_NET_DRIVER=alx
  E: ID_NET_LINK_FILE=/lib/systemd/network/99-default.link
  E: ID_NET_NAME_MAC=enx408d5c515b0d
  E: ID_NET_NAME_PATH=enp2s0
  E: ID_OUI_FROM_DATABASE=GIGA-BYTE TECHNOLOGY CO.,LTD.
  E: ID_PATH=pci-0000:02:00.0
  E: ID_PATH_TAG=pci-0000_02_00_0
  E: ID_PCI_CLASS_FROM_DATABASE=Network controller
  E: ID_PCI_SUBCLASS_FROM_DATABASE=Ethernet controller
  E: ID_VENDOR_FROM_DATABASE=Qualcomm Atheros
  E: ID_VENDOR_ID=0x1969
  E: IFINDEX=2
  E: INTERFACE=enp2s0
  E: SUBSYSTEM=net
  E: SYSTEMD_ALIAS=/sys/subsystem/net/devices/enp2s0
  E: TAGS=:systemd:
  E: USEC_INITIALIZED=752502

  and again, nothing in the udev rules:
  bladernr@galactica:~$ ls -a /etc/udev/*
  /etc/udev/udev.conf

  /etc/udev/hwdb.d:
  .  ..

  /etc/udev/rules.d:
  .  ..

  ProblemType: Bug
  DistroRelease: Ubuntu 16.04
  Package: udev 228-6ubuntu1
  ProcVersionSignature: Ubuntu 4.4.0-2.16-generic 4.4.0
  Uname: Linux 4.4.0-2-generic x86_64
  ApportVersion: 2.19.4-0ubuntu2
  Architecture: amd64
  Date: Thu Feb 11 16:36:35 2016
  InstallationDate: Installed on 2016-02-10 (1 days ago)
  InstallationMedia: Ubuntu 16.04 LTS "Xenial Xerus" - Alpha amd64 (20160210)
  ProcEnviron:
   TERM=xterm
   PATH=(custom, no user)
   XDG_RUNTIME_DIR=<set>
   LANG=en_US.UTF-8
   SHELL=/bin/bash
  ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-4.4.0-2-generic.efi.signed 
root=UUID=b53bf9e5-5cab-4ebd-98cc-a07ddffe53af ro quiet splash vt.handoff=7
  SourcePackage: systemd
  UpgradeStatus: No upgrade log present (probably fresh install)
  dmi.bios.date: 03/03/2014
  dmi.bios.vendor: Intel Corp.
  dmi.bios.version: RKPPT10H.86A.0032.2014.0303.1322
  dmi.board.asset.tag: To be filled by O.E.M.
  dmi.board.name: D53427RKE
  dmi.board.vendor: Intel Corporation
  dmi.board.version: G87971-403
  dmi.chassis.type: 3
  dmi.modalias: 
dmi:bvnIntelCorp.:bvrRKPPT10H.86A.0032.2014.0303.1322:bd03/03/2014:svn:pn:pvr:rvnIntelCorporation:rnD53427RKE:rvrG87971-403:cvn:ct3:cvr:

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/systemd/+bug/1544747/+subscriptions

-- 
Mailing list: https://launchpad.net/~touch-packages
Post to     : touch-packages@lists.launchpad.net
Unsubscribe : https://launchpad.net/~touch-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to