[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: systemd: some more questions



On Fri, 14 Feb 2014 17:42:54 +0100
"Gian Uberto Lauri" <saint@eng.it>  wrote:

> Brian writes:
>  > On Fri 14 Feb 2014 at 14:11:30 +0100, Gian Uberto Lauri wrote:
>  > 
>  > > Ralf Mardorf writes:
>  > > 
>  > >  > During setting up Arch Linux with systemd the device name switched from
>  > >  > eth0 to enp3s0 on my machine.
>  > > 
>  > > Any reason for this? 
>  > 
>  > http://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames/
> 
> Interesting. But may I ask  a full identification (manufacturer, model
> at  least)  of  an  system  that showed  the  problem  of  having  the
> interfaces  have not  a stable  name  between reboots?  I am  _really_
> curious to know of one of them.
>
> The ONLY  time I have seen  this was with  a template VM. Each  new vm
> started from the base image  had a different "hardware identification"
> (MAC? - it was some years ago, can't remember the full details).  that
> changed eth0 to eth1, eth2... A  quick fix to the udev scripts removed
> the problem.

Do you want to know a real reason? Ok:

It all started with a 'biosdevname' package, originally written by Dell
employee, which 'solved' old RedHat problem - network interfaces names
were changing between reboots, UNLESS you've specified MAC addresses in
the interface definition (/etc/sysconfig/network-scripts/if-eth*).
Given the quality of so-called 'Dell servers' - heck, things like
this did happen, are happening and will happen.

Note, that it WAS solved in Debian, like, 10 years before that by udev
rules generator, which put MAC address of the interface into an
appropriate udev rule.

Next, someone at RedHat looked at the mess which their
'network-scripts' became, and wrote NetworkManager. Unsure whoever came
with the idea of using NetworkManager on a server - but RHEL6 does that
out-of-the-box.
Does NetworkManager use /etc/sysconfig/network-scripts? Of course, no,
as it would violate the whole 'next-clicky-next-clicky' way to 'manage
the network'. So, another hack was needed, and 'biosdevname' was
choosed as such.

So, then systemd was written - they merely scratched old RedHat itch,
no more. They didn't make it work first, so they patched udev (which
conveniently is in the same source tree as systemd is), which yielded
poor RedHat customers so called 'unpredictable predictable network
interface names'.

Good thing is Debian maintainers reverted this ugly hack for Debian
packages.


As for knowing 'full identification' - use dmidecode.

Reco


Reply to: