[ale] [Fwd: Advertising on ale.org] - OT MS vs Apple vs Linux/UNIX

Alex Carver agcarver+ale at acarver.net
Sat Sep 12 18:33:32 EDT 2015


On 2015-09-12 13:44, Solomon Peachy wrote:
> On Sat, Sep 12, 2015 at 11:08:26AM -0700, Alex Carver wrote:
>> 1.  If a feature of systemd is not needed at all, does it still load?
> 
> Generally speaking, no.  Most of systemd exists of independent binaries
> that are enabled at runtime based on userspace-level configuration; the 
> only exception to this that I can think of is the journal.
> 
>> Case in point, according to the docs PulseAudio is a core module of PID
>> 1.  
> 
> I'm not sure where you read that, as PulseAudio has nothing to do with 
> systemd.

I'm trying to find the page again but it was listed as one of the more
fundamental components of systemd.  It was a large graphic which showed
various system components (including the hardware wrapped by the kernel)
upwards to user space.  One section was highlighted as systemd and
contained udevd, journald, networkd, dbus and then at the far end it
showed PulseAudio implying it was a service with a priority equal to
that of dbus or udev.

Ah, actually I did find it.  It's a Wikipedia article linked directly
from the systemd project page on freedesktop.org:

http://www.freedesktop.org/wiki/Software/systemd/

Withn the first paragraph it says "Also see the Wikipedia article."
which links to:

https://en.wikipedia.org/wiki/Systemd

It's a bit confusing and probably not well written but when trying to
find any information on something very new and unfamiliar it's hard to
separate out any mistakes.

> 
>> 2. Can I patch a piece of systemd without forcing a reboot? 
> 
> Yes, including the component that runs as PID1.

Ok, no one ever describes *how* nor do they ever really mention it.
It's not even in the FAQ on the project page.

> 
>> 3.  For some of the more unusual inclusions in systemd (e.g. DHCPd) is
>> it possible to turn that feature off, remove its memory footprint, and
>> replace it with another? 
> 
> systemd's dhcp client and server are entirely optional, both at compile 
> time and runtime.  If not actually invoked/executed, they don't do 
> anything but take up space on disk.
> 
>> Maybe some of the angst would calm down a bit if the developers and
>> documenters would actually explain these things instead of just saying
>> "look what new feature we added".  That's mostly what I see on that
>> -devel list, a lot of excitement about pulling in yet another feature
>> but no real documentation about what to do when it doesn't fit a need.
> 
> You're probably best off looking at the user-facing documentation, which 
> necessarily does lag a bit behind posts on the -devel list.  :)

That's what I was trying to do, but even the project page seems to be
slim on documentation beyond how to use the feature (missing would be
maintenance, lower level control, etc.)


> 
>> I was trying to give it the benefit of the doubt but the documentation 
>> I can find is so poor or inapplicable to the use case (meaning 
>> supplied as a distro package rather than built from source)
> 
> systemd-the-project can be seen as a big box of tools that can be used 
> to build a distribution.  Exactly which parts the distro enables and 
> utilizes are up to the distro, so it's hard to write meaningingful 
> documentation when nearly every component is optional.
> 
> For example, going back to your earlier questions about the dhcp stuff:
> 
> It's a completely optional component from systemd's perspective, so 
> strictly speaking using it or not would be a matter of running 
> 'systemctl stop systemd-networkd' and that's about it.  However, if your 
> distro was built to utilize that feature, then you'd have to come up 
> with an alternative way to bring up your network devices.

Bringing up a network interface (which almost always are static in my
case) and bringing up a DHCP server are two different things.  I used
this as an example only and not really intending to be specific to DHCP
but more to identify a situation where a systemd module has more than
one responsibility (in this case networkd has network interface, DHCP
client and DHCP server).  I was not really understanding how to have one
feature without the others.  Back with the DHCP example it's not obvious
or intuitive how to allow a static interface to be brought up, not
invoke a DHCP client on that interface (since a static IP doesn't need
it) and also prevent the systemd DHCP daemon from starting which would
interfere with a preferred daemon even though all three of those
features are within the networkd portion of systemd.




More information about the Ale mailing list