Systemd - actually quite cool
If you have a bit of reading time you might want to look at:
10 Replies
Compared to Chkconfig/Service, Systemd is a bloated, overly complicated, nightmare that has no (zero, zip, nadda) purpose being in a SERVER OS.
srs
@vonskippy:
Did you fall on your head?
Yes, but that was years ago and the scar has faded so much it's barely visible anymore. It never stopped me getting into Mensa so I guess the damage can't have been that bad.
@vonskippy:
Compared to Chkconfig/Service, Systemd is a bloated, overly complicated, nightmare that has no (zero, zip, nadda) purpose being in a SERVER OS.
That's exactly what I thought about it at first, and the reason I avoided it for so long. It's really none of those things you list, it's a good thing™. RHEL 7 is going to come with systemd but you will still be able to use chkconfig and service as before as well as the new systemctl commands.
Sadly it won't help keeping those dam kids off your lawn.
Is this command easier to type, remember, understand
chkconfig httpd --list
Or is this such a better (or shall we say cooler) way of doing it
ls /etc/systemd/system/*.wants/httpd.service
And of course only the nerds would be dumb enough to want to type this
service httpd start
When all the cool kids are typing this
systemctl start httpd service
There is NO REASON for the added complexity and longer syntax.
RHEL is getting major flack for letting the Fedora dorks dictate procedural calls in RHEL. It will be interesting to see if Systemd makes it past RHEL 7 into RHEL 8. There are thousands (and thousands) of scripts that will need to be tinkered with for a big fact zero gain. Most businesses frown on having their overpaid IT staff do needless work.
@vonskippy:
When all the cool kids are typing this
systemctl start httpd service
I've never needed to start anything that way, just doing for eg
systemctl start httpd
worked fine. Unless fedora etc are doing something dodgy…
It figures out dependencies and starting order of daemons. Sysvinit has to be told what order to start things in.
Because of the above it starts daemons in parallel giving a very fast boot time.
The configs are declarative ( like puppet, cfengine, etc ), not overly long shell scripts.
Systemd keeps track of processes with linux cgroups, which allows systemd to find all subprocesses of started daemons no matter how much they fork() and exec(). This is impossible with the standard rc script setup.
@sednet:
It figures out dependencies and starting order of daemons. Sysvinit has to be told what order to start things in.
Does systemd determine this on its own, or does it need to have dependencies given in a config file? If the latter, LSB sysvinit also has this capability, although whether it uses this vs. hardcoded boot sequence values depends on your distro.
A couple systemd capabilities would seem to be useful on Linode:
Starting network services on demand
. This way a less-used daemon need not sit loaded in memory (or swap) all the time just waiting for connections.ala inetdAutomatically restarting services that have died without having to run monit or similar.