A dependency system for unix services.
And, a set of basic unix services to make a unix system usable.
And, a growing list of not quite so basic services
From a programmers perspective, it's the mainloop phenomenon.
Solaris: Service Management Facility
Mac OSX: launchd
Ubuntu: upstart (until recently)
LSB (actually implements LSB deps)
Proper, explicit dependencies between system compontents
Starts components in parallel
A proper separation of concerns, lots of situations covered.
Configuration is not runnable shell.
[Unit] Description=CUPS Scheduler Documentation=man:cupsd(8) [Service] ExecStart=/usr/sbin/cupsd -l Type=simple [Install] Also=cups.socket cups.path WantedBy=printer.target
Separate system and user daemons.
Modify configuration without modifying upstream configuration
Service watching (startup, watchdog, failure modes)
[EXTENDED] /lib/systemd/system/rc-local.service → /lib/systemd/system/rc-local.service.d/debian.conf [EXTENDED] /lib/systemd/system/systemd-timesyncd.service → /lib/systemd/system/systemd-timesyncd.service.d/disable-with-time-daemon.conf [EQUIVALENT] /etc/systemd/system/default.target → /lib/systemd/system/default.target 3 overridden configuration files found.
Removal of some error and security prone code
standardized cgroup controls
debootstrap ; systemd-spawn-boot * systemd takes care of all pseudo file systems for you
quick to boot
can reduce load later on (services start & stop as required)
It’s a little new, so LTS distros necessarily have older versions
network-online.target is a bit flakey
Deeply hooked into linux specific details, not portable
Some cool features relient on file system e.g. btrfs for snapshot
I haven’t had a chance to play with networkd yet, but it sounds like it’s going to be very good.
Unless otherwise stated, our shows are released under a Creative Commons Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0) license.
The HPR Website Design is released to the Public Domain.