On Tuesday 27 August 2019 17:38:34 David Wright wrote:

> On Tue 27 Aug 2019 at 16:13:25 (-0400), Greg Wooledge wrote:
> > On Tue, Aug 27, 2019 at 03:50:31PM -0400, Gene Heskett wrote:
> > > I'll do it, but the date on it is today, so I suspect something
> > > in /lib/udev/rules.d is behind the re-write.
> >
> > If that file exists, it's used.  Quotes in the file are ignored. 
> > Valid content in the file is used to map various interfaces
> > (typically identified by their MAC addresses) to interface names.
> >
> > If the file does not exist, it will be (re)created.
> >
> > If the file exists, but your interface isn't in it (as determined by
> > whatever criteria are being used to identify the interface,
> > typically the MAC address), then a new name will be assigned for it
> > (skipping the names that are already in use), and this will be
> > written to the file.
> >
> > So, the suggestion was to remove the file from the system before
> > replacing all your interfaces (or moving the hard drive to a new
> > computer, which from the hard drive's point of view is equivalent to
> > "you replaced all the interfaces").  In that situation, the file
> > doesn't exist, so it will be created from scratch.  You've got one
> > or more interfaces that don't (yet) have assigned names, so names
> > will be assigned to them.  One of them will become eth0, one of them
> > will become eth1, and so on, depending on how many interfaces there
> > are in the new machine.
> >
> > If you have exactly one interface, it will become eth0, and you will
> > be happy.
> >
> > If you have more than one interface, you have no way of knowing
> > which one will become eth0.  That's the situation the newfangled
> > thing was intended to remedy, but it doesn't really succeed at that
> > either.
>
> I think you're being oblique. There's a race. The udev method was not
> designed to eliminate that, but to make sure that the resulting names
> would forever be the same, once the race has been run the first time.
>
> In the past, when I have had a mobo fail and moved everything into
> a spare box, I've found that the new machine (I assume it's the CMOS
> sensu lato) is happiest when you add one card at a time, run the
> POST and let the CMOS deal with it; then add the next.
> In a similar manner, you *could* fix the race by booting up linux
> with one new interface at a time …
>
> > In almost every situation, you need to let the computer ASSIGN the
> > names first, then login to it and see what interface got what name,
> > and then adjust your configs accordingly.
>
> … but really there's no need, because it's obvious from the rules file
> what is going on.
>
>   SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", \
>   ATTR{address}=="00:a0:24:93:4d:8e", ATTR{dev_id}=="0x0", \
>   ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
>
>   SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", \
>   ATTR{address}=="00:a0:24:b8:63:b5", ATTR{dev_id}=="0x0", \
>   ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"
>
Add another stanza that ends with eth2.

And normally, one expects to see discovery someplace in dmesg.
but /dev/eth2 is not created. No /dev/eth nor is there a /dev/eth* 
anyplace in the dmesg.  Nor have I found a 6 doublet MAC address.
 
> There's a machine with two 3Com NICs. If you don't like the
> allocation, you just switch eth0 and eth1. (One assumes that the
> backplanes have been physically marked so that the connectors
> themselves can be distinguished.) So you don't need to touch
> your configuration, by which I assume you mean /e/n/i and suchlike.
>
yes.

> > I do not know of any way around this, other than only ever having
> > one interface per computer, which may work OK in some situations,
> > but definitely not in others.
>
> Cheers,
> David.


Cheers, Gene Heskett
-- 
"There are four boxes to be used in defense of liberty:
 soap, ballot, jury, and ammo. Please use in that order."
-Ed Howdershelt (Author)
If we desire respect for the law, we must first make the law respectable.
 - Louis D. Brandeis
Genes Web page <http://geneslinuxbox.net:6309/gene>

Reply via email to