LinuxQuestions.org
Welcome to the most active Linux Forum on the web.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware
User Name
Password
Slackware This Forum is for the discussion of Slackware Linux.

Notices


Reply
  Search this Thread
Old 09-04-2021, 11:57 AM   #61
EdGr
Senior Member
 
Registered: Dec 2010
Location: California, USA
Distribution: I run my own OS
Posts: 1,003

Rep: Reputation: 474Reputation: 474Reputation: 474Reputation: 474Reputation: 474

Quote:
Originally Posted by hazel View Post
istr it was to deal with big server/router machines that have more than one network card. They wanted names that didn't depend on the more or less random order in which the kernel detected the devices.
That happens on my HEDT. After a clean install, I sometimes need to swap the names of eth0 and eth1.
Ed
 
Old 09-04-2021, 03:17 PM   #62
Pithium
Member
 
Registered: Jul 2014
Location: Far side of the Oregon Trail
Distribution: Slackware64 15.0
Posts: 508

Rep: Reputation: 586Reputation: 586Reputation: 586Reputation: 586Reputation: 586Reputation: 586
I thought the idea between the new network names was to make them "predictable". The basic concept is that the linux system would inherit whatever chip ID was set in firmware. So for multi-NIC systems this would mean that the vendor could physically label ports 1,2,3 and 4 and be confident that the linux OS would obey that layout.

The problem that they refused to acknowledge is that naming conventions change from one vendor to the next and that not all vendors bother to provide those ids in the firmware. So now instead of seeing eth0,1,2,3 on EVERY motherboard you see enp4s0 for one board, enxxxxxxx on another, and so on. There's a waterfall system in place to so if it doesn't find a spec it defaults to something basic. As an absolute last resort it can be configured to use "legacy" ethX names.


They tried to make the network names predictable but in the end it only made the problem worse... Install a systemd distro on a new piece of hardware and you literally don't know what to expect until it boots up.

I saw a debian user on a local LUG mailing list go on an epic rant about that earlier this year. He has 2 different workstations and the NIC naming conventions are completely different. 15 years of scripts he wrote that used to work are suddenly worthless because someone thought they could fix a "problem".
 
5 members found this post helpful.
Old 09-05-2021, 03:04 AM   #63
rkelsen
Senior Member
 
Registered: Sep 2004
Distribution: slackware
Posts: 4,472
Blog Entries: 7

Rep: Reputation: 2573Reputation: 2573Reputation: 2573Reputation: 2573Reputation: 2573Reputation: 2573Reputation: 2573Reputation: 2573Reputation: 2573Reputation: 2573Reputation: 2573
Quote:
Originally Posted by Pithium View Post
They tried to make the network names predictable but in the end it only made the problem worse...
That's a sharp obvservation which can be expanded to apply to the hot mess that is the systemd project, IMNSHO.
Quote:
Originally Posted by Pithium View Post
I saw a debian user on a local LUG mailing list go on an epic rant about that earlier this year. He has 2 different workstations and the NIC naming conventions are completely different. 15 years of scripts he wrote that used to work are suddenly worthless because someone thought they could fix a "problem".
Realistically, he probably should've used a variable NIC name if the scripts are that complicated.

But back on point, you're right. There is elegance in simplicity.

I'm not against complication where it brings true sophistication wherever required... but geez I'm glad this mess is not something I have to deal with.
 
Old 09-05-2021, 04:20 AM   #64
zeebra
Senior Member
 
Registered: Dec 2011
Distribution: Slackware
Posts: 1,834
Blog Entries: 17

Rep: Reputation: 643Reputation: 643Reputation: 643Reputation: 643Reputation: 643Reputation: 643
Quote:
Originally Posted by rkelsen View Post
But back on point, you're right. There is elegance in simplicity.
That's very very right. I find myself in a situation to also appreciate it for empowering users to do things in a simpler way.

But, the question actually is also about the larger part of the market, servers. I wonder if it is a good thing for servers to have systemd or if it would be better to have something more simpe. I dunno, if I was running servers, if I would want something so complex at all, or rather avoid as much complexity as possible in the base system. All the talk is about services, but would it not be possible to just write a service manager instead and pass necessary info between any init and any service manager?

Last edited by zeebra; 09-05-2021 at 04:24 AM.
 
Old 09-05-2021, 07:03 AM   #65
rkelsen
Senior Member
 
Registered: Sep 2004
Distribution: slackware
Posts: 4,472
Blog Entries: 7

Rep: Reputation: 2573Reputation: 2573Reputation: 2573Reputation: 2573Reputation: 2573Reputation: 2573Reputation: 2573Reputation: 2573Reputation: 2573Reputation: 2573Reputation: 2573
what is going to happen now that eudev is not going to be mantained?

My servers run 24/7, only going offline when I take them down for updates & upgrades. They're all on Slackware. It doesn't miss a beat. Hasn't once failed me... even without service supervision. I'm only a small shop, but it's nice to have the confidence that Slackware provides.

I set up an OpenVPN server 17 months ago. It's only been offline once, when I moved the box to a different location in the office. Came back up immediately upon starting it. Aside from that, I also use Samba extensively, NFS, SSH and I've got a small (internal) web server. All have proven to be bullet proof thanks to Slackware.

I'd guess service supervision might be important in a larger business, where they can't lose seconds or the few minutes it might take while someone looks at it. But even then, using it as a crutch would seem to point to bigger, underlying problems.
 
6 members found this post helpful.
Old 09-05-2021, 02:18 PM   #66
ttk
Senior Member
 
Registered: May 2012
Location: Sebastopol, CA
Distribution: Slackware64
Posts: 1,038
Blog Entries: 27

Rep: Reputation: 1484Reputation: 1484Reputation: 1484Reputation: 1484Reputation: 1484Reputation: 1484Reputation: 1484Reputation: 1484Reputation: 1484Reputation: 1484
It would behoove everyone to read this thread in its entirety:

https://www.mail-archive.com/gentoo-.../msg93253.html

I would greatly prefer to see Slackware remain free of systemd. Where I work, systemd (under CentOS) has been a constant source of technical difficulties for our sysadmins.

However, that thread makes it clear that maintaining eudev is a huge time-suck. I hope someone steps up and helps maintain it. It can't be me; my life situation barely leaves me with time enough to maintain the ##slackware-help chatbot, lately.

rworkman's solution makes more sense, at least in the short term. The danger there is that systemd might make that harder to do, and we'd have to revert to eudev anyway (and the longer a project like that is left unmaintained, the harder it gets to start maintaining it -- many small deltas are easier than one big one).
 
1 members found this post helpful.
Old 09-06-2021, 08:39 PM   #67
thirdm
Member
 
Registered: May 2013
Location: Massachusetts
Distribution: Slackware, NetBSD, Debian, 9front
Posts: 325

Rep: Reputation: Disabled
Quote:
Originally Posted by TheRealGrogan View Post
I change my interface back to "eth0" even on silly distros, because stupid stuff like enp4s0 is fragile... add something to a PCI-E slot on your motherboard and see what happens to that. Fix it, and then if you remove the device it will happen again.

I note that you write Interface, singular. If Slackware finds the "least paddling your canoe upstream" approach to be to take the udev code from systemd's tree (can we agree not to be alarmest about that meaning that we're getting systemd -- that's not what would be happening in that eventuality) it's I think going to have to make a decision about names. I'm trying hard to forget all of it but in a dream I found that there are gotchas with renaming back to eth0 if you have two or more interfaces. It's foggy but the dream went something like this...

Boot #1
1. kernel selected eth0 for NIC with MAC of AAAA11111FFFF.
2. and eth1 for NIC with MAC of BBBB0000BBBB.
3. systemd-udev renamed eth0 to eth0s5
4. and eth1 to eth0s4
5. I made a udev rule (blech) to name NIC AAAA11111FFFF. eth0
6. and to name NIC BBBB0000BBBB. eth1.
7. my udev rule would prevent the standard udev rule that comes up with names like eth0s4, eth0s5, or howdy doody, since that one checked a property that's set on the first udev rule to do a rename.

Boot #2
1. kernel selected eth1 for NIC with MAC of AAAA11111FFFF.
2. kernel sniffed at daisies for a little bit
3. a udev rule ran and tried to name NIC with MAC of BBBB0000BBBB as eth1 but eth1 is taken so some debian code named it rename0

or something like that. There's a race in other words. This is what I found most frustrating about the new scheme (along with the fact that if I plugged my phone / internet connection into different usb slots I'd get different device names). If there was a simple switch you could flip to say, "we don't want that," it would be all okay. Well, Debian had the switch for awhile but maybe with this race condition and with threats they couldn't keep it cause it's not how the new scheme really is supposed to work. Correct me if I'm wrong but the current udev reality is that you can make whatever udev rules you want to name your nics however you want as long as you don't want to name them eth0 and eth1.
 
Old 09-06-2021, 08:57 PM   #68
LuckyCyborg
Senior Member
 
Registered: Mar 2010
Posts: 3,593

Rep: Reputation: 3459Reputation: 3459Reputation: 3459Reputation: 3459Reputation: 3459Reputation: 3459Reputation: 3459Reputation: 3459Reputation: 3459Reputation: 3459Reputation: 3459
Quote:
Originally Posted by thirdm View Post
I note that you write Interface, singular. If Slackware finds the "least paddling your canoe upstream" approach to be to take the udev code from systemd's tree (can we agree not to be alarmest about that meaning that we're getting systemd -- that's not what would be happening in that eventuality) it's I think going to have to make a decision about names. I'm trying hard to forget all of it but in a dream I found that there are gotchas with renaming back to eth0 if you have two or more interfaces. It's foggy but the dream went something like this...

Boot #1
1. kernel selected eth0 for NIC with MAC of AAAA11111FFFF.
2. and eth1 for NIC with MAC of BBBB0000BBBB.
3. systemd-udev renamed eth0 to eth0s5
4. and eth1 to eth0s4
5. I made a udev rule (blech) to name NIC AAAA11111FFFF. eth0
6. and to name NIC BBBB0000BBBB. eth1.
7. my udev rule would prevent the standard udev rule that comes up with names like eth0s4, eth0s5, or howdy doody, since that one checked a property that's set on the first udev rule to do a rename.

Boot #2
1. kernel selected eth1 for NIC with MAC of AAAA11111FFFF.
2. kernel sniffed at daisies for a little bit
3. a udev rule ran and tried to name NIC with MAC of BBBB0000BBBB as eth1 but eth1 is taken so some debian code named it rename0

or something like that. There's a race in other words. This is what I found most frustrating about the new scheme (along with the fact that if I plugged my phone / internet connection into different usb slots I'd get different device names). If there was a simple switch you could flip to say, "we don't want that," it would be all okay. Well, Debian had the switch for awhile but maybe with this race condition and with threats they couldn't keep it cause it's not how the new scheme really is supposed to work. Correct me if I'm wrong but the current udev reality is that you can make whatever udev rules you want to name your nics however you want as long as you don't want to name them eth0 and eth1.
Yep! At least on a systemd driven Linux distribution, like Ubuntu.

But in fact is all about the native/default rules.

Last edited by LuckyCyborg; 09-06-2021 at 09:00 PM.
 
Old 09-07-2021, 04:05 AM   #69
hazel
LQ Guru
 
Registered: Mar 2016
Location: Harrow, UK
Distribution: LFS, AntiX, Slackware
Posts: 7,681
Blog Entries: 19

Rep: Reputation: 4492Reputation: 4492Reputation: 4492Reputation: 4492Reputation: 4492Reputation: 4492Reputation: 4492Reputation: 4492Reputation: 4492Reputation: 4492Reputation: 4492
Quote:
Originally Posted by thirdm View Post
If there was a simple switch you could flip to say, "we don't want that," it would be all okay. Well, Debian had the switch for awhile but maybe with this race condition and with threats they couldn't keep it cause it's not how the new scheme really is supposed to work.
There used to be one. You could put "net.ifnames=0" on the kernel command line. Does that not work any more?
 
1 members found this post helpful.
Old 09-07-2021, 05:35 AM   #70
bandrami
LQ Newbie
 
Registered: Nov 2013
Location: Mumbai
Distribution: Slackware, GUIX, NixOS
Posts: 18

Rep: Reputation: Disabled
What is GUIX doing? They created elogind in a similar situation and I wonder if they will take over eudev?
 
Old 09-07-2021, 07:03 AM   #71
zeebra
Senior Member
 
Registered: Dec 2011
Distribution: Slackware
Posts: 1,834
Blog Entries: 17

Rep: Reputation: 643Reputation: 643Reputation: 643Reputation: 643Reputation: 643Reputation: 643
Quote:
Originally Posted by bandrami View Post
What is GUIX doing? They created elogind in a similar situation and I wonder if they will take over eudev?
I think they are pretty committed to the non-systemd route, considering they use GNU Shepherd. This should be a good thing in the end, as it hopefully has the full backing of GNU.

It's a little bit difficult to interpret GNU politics and software activism though, as Gnome is also supposedly partly a GNU project and have become dependent on SystemD. But I do doubt that GNU would really want to support a corporate project like SystemD and not rather put their weight behind a counterpart (Shepherd + generic inits etc).

Last edited by zeebra; 09-07-2021 at 07:07 AM.
 
Old 09-07-2021, 07:16 AM   #72
chrisVV
Member
 
Registered: Aug 2010
Posts: 548

Rep: Reputation: 370Reputation: 370Reputation: 370Reputation: 370
Quote:
Originally Posted by thirdm View Post
I note that you write Interface, singular. If Slackware finds the "least paddling your canoe upstream" approach to be to take the udev code from systemd's tree (can we agree not to be alarmest about that meaning that we're getting systemd -- that's not what would be happening in that eventuality) it's I think going to have to make a decision about names. I'm trying hard to forget all of it but in a dream I found that there are gotchas with renaming back to eth0 if you have two or more interfaces. It's foggy but the dream went something like this...

Boot #1
1. kernel selected eth0 for NIC with MAC of AAAA11111FFFF.
2. and eth1 for NIC with MAC of BBBB0000BBBB.
3. systemd-udev renamed eth0 to eth0s5
4. and eth1 to eth0s4
5. I made a udev rule (blech) to name NIC AAAA11111FFFF. eth0
6. and to name NIC BBBB0000BBBB. eth1.
7. my udev rule would prevent the standard udev rule that comes up with names like eth0s4, eth0s5, or howdy doody, since that one checked a property that's set on the first udev rule to do a rename.

Boot #2
1. kernel selected eth1 for NIC with MAC of AAAA11111FFFF.
2. kernel sniffed at daisies for a little bit
3. a udev rule ran and tried to name NIC with MAC of BBBB0000BBBB as eth1 but eth1 is taken so some debian code named it rename0

or something like that. There's a race in other words. This is what I found most frustrating about the new scheme (along with the fact that if I plugged my phone / internet connection into different usb slots I'd get different device names). If there was a simple switch you could flip to say, "we don't want that," it would be all okay. Well, Debian had the switch for awhile but maybe with this race condition and with threats they couldn't keep it cause it's not how the new scheme really is supposed to work. Correct me if I'm wrong but the current udev reality is that you can make whatever udev rules you want to name your nics however you want as long as you don't want to name them eth0 and eth1.
I don't use debian, but in order to stop device renaming under systemd I disable systemd-networkd.service and systemd-resolvd.service. For me, that keeps the standard eth0, wlan0 ... network interface names and allows NetworkManager to do its thing. Does that not work for you?

As an experiment, when booting slackware using the standard slackware init scripts (including /etc/rc.d/re.inet1) I tried using the version of the udev daemon provided by systemd-249 rather than the one provided by eudev[1]. As reported elsewhere in this thread (R. Workman) that appears to boot up fine, and for me it does not carry out any network interface renaming, so your problem seems to be either (a) some udev rules that debian is unhelpfully applying to your installation not connected with systemd which you need to disable, or (b) the systemd-networkd service, which you also need to disable [edit or (c) set kernel parameters to net.ifnames=0]

[1] With recent versions of systemd there is no separate udevd binary: /lib/systemd/systemd-udevd is a symbolic link to /bin/udevadm. The relevant systemd unit file starts udevadm indirectly via that /lib/systemd/systemd-udevd symbolic link: presumably udevadm when so started knows to launch the udev daemon by reading argv[0]. So there does not appear to be any immediate problem for slackware arising from eudev becoming unmaintained. Instead a problem would arise if the systemd codebase were to require the systemd daemon to be running whenever the udev daemon is running - at present it doesn't. Were that to happen, then there would be some hard choices for the slackware maintainers to make.

Last edited by chrisVV; 09-07-2021 at 07:55 AM.
 
Old 09-07-2021, 07:23 AM   #73
bandrami
LQ Newbie
 
Registered: Nov 2013
Location: Mumbai
Distribution: Slackware, GUIX, NixOS
Posts: 18

Rep: Reputation: Disabled
Quote:
Originally Posted by thirdm View Post
So far in my LFS installation I've done fine without running udev at all. The kernel is what creates files in /dev/ and it creates sensible ethernet device names. Well, at least this works for those of us with nice simple setups with only one hard drive and only one nic of a given type (e.g. eth0 vs. usb0 as opposed to eth0 vs. eth1).
This always becomes a question of what you are and aren't willing to consider a corner case that requires more work. Most destop and rack server Linux installations would be absolutely fine with a plain old static /dev tree like we used to have (frankly the servers would probably be better off). Soooooo much of this is solutions in search of a problem.
 
Old 09-07-2021, 07:31 AM   #74
chemfire
Member
 
Registered: Sep 2012
Posts: 426

Rep: Reputation: Disabled
Quote:
Originally Posted by Pithium View Post
They tried to make the network names predictable but in the end it only made the problem worse... Install a systemd distro on a new piece of hardware and you literally don't know what to expect until it boots up.

I saw a debian user on a local LUG mailing list go on an epic rant about that earlier this year. He has 2 different workstations and the NIC naming conventions are completely different. 15 years of scripts he wrote that used to work are suddenly worthless because someone thought they could fix a "problem".
To the scripts issue, find me anyone who claims to have never written any software that relied on a seemingly valid but bad assumptions about 'they way things are' and I point out a liar. We should not assume the guy did something like hard code "eth0", I know I have scripts that assume things like network adapters will at least match the regex [a-z]{3,4}\.?[0-9]{1,3} for example that I naively assumed was true 20 years ago! Shared with lots people who never reported any issues back then!


The real issue is the new convention does solve the predictability problem for the people signing the checks. The lights out data center guys doing automated deployment of 1000s of the same system and 100,000s of VMs with basically the same virtual hardware get the predictable results they want/need. The big corps support desks deploying hundreds of identical PCs are fine to, they know the first NIC in all the Thinkpad T$$$ units is enp6s3 or whatever. Its the rest of us dealing with a handful of disparate hardware systems and trying to give / write instructions for software where we don't know what the hardware will be, and reconfiguring hardware fequently who it does not work for. but we are not sending RedHat checks.
 
1 members found this post helpful.
Old 09-07-2021, 07:42 AM   #75
chrisVV
Member
 
Registered: Aug 2010
Posts: 548

Rep: Reputation: 370Reputation: 370Reputation: 370Reputation: 370
Quote:
Originally Posted by chemfire View Post
To the scripts issue, find me anyone who claims to have never written any software that relied on a seemingly valid but bad assumptions about 'they way things are' and I point out a liar. We should not assume the guy did something like hard code "eth0", I know I have scripts that assume things like network adapters will at least match the regex [a-z]{3,4}\.?[0-9]{1,3} for example that I naively assumed was true 20 years ago! Shared with lots people who never reported any issues back then!


The real issue is the new convention does solve the predictability problem for the people signing the checks. The lights out data center guys doing automated deployment of 1000s of the same system and 100,000s of VMs with basically the same virtual hardware get the predictable results they want/need. The big corps support desks deploying hundreds of identical PCs are fine to, they know the first NIC in all the Thinkpad T$$$ units is enp6s3 or whatever. Its the rest of us dealing with a handful of disparate hardware systems and trying to give / write instructions for software where we don't know what the hardware will be, and reconfiguring hardware fequently who it does not work for. but we are not sending RedHat checks.
I find the copious comments along these lines on this thread rather puzzling. systemd might have some unhelpful defaults (I reserve judgement on that) but when set up to my liking it hasn't stopped me adopting "normal" network interface names. Am I right that you have come across distributions (possibly Redhat which I don't use?) which try to stop that, or is it a matter of a lack of knowledge on the part of the user?
 
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
[SOLVED] A scenario with moved physival volumes: what's going to happen ? louigi600 Slackware 9 01-26-2016 09:10 PM
eudev fork aims to be system initialization and distribution neutral H_TeXMeX_H Slackware 1 12-17-2012 02:23 PM
slackpkg -current. Whats going to happen? Twister512 Slackware 5 04-06-2010 01:41 PM
LXer: Trusting Microsoft: Not Going to Happen LXer Syndicated Linux News 2 03-22-2007 02:42 PM

LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware

All times are GMT -5. The time now is 08:51 PM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration