Re: administration of initscripts
On 04/16/2013 03:02 PM, Kevin Chadwick wrote:
Lets not pollute this useful thread with systemd
It seems a thread about init systems and administration/tweaking of them is the
most appropriate place for systemd to be mentioned. Not least that it can solve
the problem the OP had. It should not be ignored or avoided from being
mentioned just because some people hate it. Some people hate sysvinit. What we
should not do is 'pollute' the thread with any misinformed bias or non
objective statements about the suitability of something for a particular job.
Let's stick to facts.
Fair enough. I would always agree with that. I will say I am not biased
in any way by my usage of BSD.
but I will say it would be the absolute last on my list and actually systemd
itself is incomptible with BSD not just udev and from my experience would be
laughed out of the room by BSD devs even if it was POSIX compliant.
Luckily we're on a Debian mailing list, then, isn't it, and not a BSD one!
Systemd has "assimilated" udev, in a manner of speaking. Udev can still
run completely without systemd, but for system builders they have to
take a lot of extra steps to seperate udev from systemd and install it.
Worse, some devs of systemd want to fully integrate udev into systemd
and make it so you can't use udev without systemd. This is bad for many
distributions as systemd may not be an option. Debian is an example:
Debian has a couple pet prijects to be ported to things
like HURD and BSD, which do not provide kernel features absolutely
necessary for systemd. Some Gentoo developers have forked udev for this
I was merely replying to a few mails at once noting that the above
suggests udev is the only non posix part. Systemd is too, such as
cgroups which if you search for on the OpenBSD list you will see strong
arguments for them actually being practically pointless. I haven't the
time to look it up or talk about it here but it shouldn't be hard to
Please also note that it is not about Linux or BSD either but POSIX.
Without POSIX Linux negates itself from some major projects and
turning POSIX into Linux only, negates POSIX.
First off: Linux itself is not fully POSIX compliant, even without
claiming importance of POSIX to Linux is not entirely correct. While
POSIX is IMPORTANT to Linux, it's never been a design goal of Linux to
full comply with POSIX. The Linux Standard Base is probably more
omportant to Linux distributions.
Second off, so many people misunderstand the goals and design of the
POSIX standards. The entire set is largely geared for source
compatibility between Unix-like systems. I challenge you to find
anywhere in the POSIX standards that defines anythign about the init
system or system manager.
Third off: SysV is probably even WORSE for compatibility between
Unix-like systems (And I doubt POSIX would even recommend SysV-like
capabilities.), because while it itself will function in virtually any
half-way POSIX environment: Initscripts themselves, which SysV cannot do
anything without, are entirely platform-specific. For example: Debian
initscripts will not work at ALL on an LFS system, which has its own
initscripts. This effectively makes any advantage of usign SysV for
promoting cross-compatibility null when you still have to use very
platform-specific methods to use it. systemd's design with the unit
files and how it works is to allow upstream developers to do what SysV,
Upstart, and OpenRC certainly would not: A universal way for their
daemon to be run by a Linux system.
Fourth off: An example, lets look at OS X, which is not only fully POSIX
compliant, but also fully SUS compliant and therefore a fully Unix
system. It uses launchd, which systemd's entire design is based on, by
the author's own admission. If systemd were so incredibly "bad for
standards" as you claim, how come it functions almost entirely like a
system manager for a full-scale POSIX/SUS system?
Fifth off, and I know this should be taken with a bit of salt: According
to Lennart, systemd is a lot closer to how Unix has always intended
system management to be rather than SysV.
Finally, being Linux-specific is ENTIRELY irrelevant to POSIX. BSD also
has system-specific parts. So does OS X. So does AIX and Solaris and
Windows and EVERY operating system. It is impossible, even under
POSIX/SUS compliance for this to be done. It is better for udev and
systemd to take advantage of kernel features to do their job *right*
rather than meet your impossible goal of "working universally well on
all systems." If systemd were to have a BSD port, it'd lose some
capabilites and admittedly gain some. The goal of systemd is to be a
*Linux* system manager. The Linux-specific usage of systemd is hardly
pointless, and you should consider the source of the people making that
claim: BSD users. I know I''m generalizing here, but ever notice how
many unsubstantiated claims *against* Linux are made by BSD users? I
could just as easily cite sources claiming the Linux-specific features
systemd uses are VERY useful, and I'd be more inclined to believe Linux
users saying these thing than BSD users because *Linux* users actually
have usage experience to back it up.