News for hackers. Stuff that matters.
Re:Devuan Jessie 1.0.0 stable release candidate by geofft on Saturday April 22, 2017 @03:19PM (#14174228)
I'm not super interested in rehashing the flamewar, so this is anecdata: from the perspective of sysadmin of thousands of physical machines, systemd has been a godsend. It gives me a standard way to supervise, gather log output from, and restart long-running-processes with dependencies on other processes. It's replaced a number of "sleep 10"s and "sleep 60"s that our infrastructure has grown over the years in shell scripts at various points in init. Starting services in a consistent environment (not inheriting anything from the sysadmin's own session / environment) has also been useful in an environment with lots of sysadmins.

It's certainly not the best solution out there for any single thing it does, but the standardization - i.e., that it is integrated with my distro and also every other distro - is extremely useful. Most existing things I want to run tend to have systemd support, and most homegrown things are very easy to write systemd units for.

Also, there are a lot of reasons to want fast reboots for servers, and systemd provides this. (Again, so do other approaches, but the standardization means this actually happens.)

It's worth noting that there are sort of two debates: systemd vs. other similar systems (upstart, SMF, launchd, whatever) or systemd/similar systems vs. sysvinit. From experienced, large-scale UNIX admins, I think the wide consensus is that the answer to the second question is "definitely anything other than sysvinit". See, for instance, that the Debian tech committee debate was about systemd vs. upstart vs. insserv or something else, and nobody voted for sysvinit.

Re:Devuan Jessie 1.0.0 stable release candidate by clarry on Saturday April 22, 2017 @03:47PM (#14174372)
This is just a personal anecdote, but so far systemd is the only init system ever to fail to reboot by first stopping all services it could (including sshd!) and then get infinitely stuck waiting on one problematic service. In the 12 years I've used Linux and OpenBSD, no other init systme ever did something like that.

What a nightmare that was to debug and fix.

I'll be happy to go with a system with fewer moving parts, even if that means reboots take a minute longer.

Re:Devuan Jessie 1.0.0 stable release candidate by lomnakkus on Saturday April 22, 2017 @04:17PM (#14174514)
Just curious, but was it really infinite? I think there's a weird default of waiting something like 5 minutes for certain services to stop...?

(You could have also hit the infamous NFS unmount bug which is basically just a kernel fuck-up.)

Re:Devuan Jessie 1.0.0 stable release candidate by Mister_Snuggles on Saturday April 22, 2017 @04:37PM (#14174621)
While I don't think this was related to the init system, I have had a Linux box completely hang while trying to reboot it because an NFS server that it was connected to went away. I'm pretty sure this was an infinite hang as it sat like that for over five days before I could physically get to it to hit the power button.

Hanging during reboot is something that, IMO, should never happen.

Re:Devuan Jessie 1.0.0 stable release candidate by lomnakkus on Saturday April 22, 2017 @04:53PM (#14174717)
Yup, I'm guessing NFS too (see my sibling reply).

In my anecdotal experience that's the _only_ case where systemd has failed to reboot, and it's not exactly systemd's fault that the kernel just hangs indefinitely.

Re:Devuan Jessie 1.0.0 stable release candidate by petre on Saturday April 22, 2017 @03:29PM (#14174276)
Most servers boot really slowly anyway (memory tests, raid cards etc), so why would anyone care if it takes one or ten seconds to boot Linux when the server boots in 120 seconds. Other init systems are capable of restarting things with dependencies as well, like BSD's rcng for instance. I am using runit to supervise my services since I can't rely on systemd.
Re:Devuan Jessie 1.0.0 stable release candidate by geofft on Saturday April 22, 2017 @03:51PM (#14174387)
My experience with sysvinit is that it definitely takes well over ten seconds to boot Linux and start all services, especially if you've been putting "sleep 60" into certain scripts to make boot ordering reliable.

Again, I'm comparing systemd to pre-systemd Linux distros (including Devuan, which explicitly continues that tradition), not to systems broadly comparable to systemd. If Devuan had a different fancy init system or service manager (which could just be bundling runit configuration for everything the OS ships with) instead of an old-school init system + old-school init scripts, this would be a very different comparison.

Re:Devuan Jessie 1.0.0 stable release candidate by petre on Sunday April 23, 2017 @01:01AM (#14176604)
Why would you sleep 60 when you have runlevels and startup order?
Re:Devuan Jessie 1.0.0 stable release candidate by geofft on Sunday April 23, 2017 @11:14PM (#14181698)
Startup order (again, with traditional runlevels and nothing like insserv) isn't enough to express "Once networking is up, start this job" or "Once this service is ready to accept connections, start this other servie".
Re:Devuan Jessie 1.0.0 stable release candidate by vertex-four on Saturday April 22, 2017 @06:27PM (#14175196)
Most servers are VPSes running on Xen, KVM, ESXi or Hyper-V.
Re:Devuan Jessie 1.0.0 stable release candidate by geofft on Saturday April 22, 2017 @07:07PM (#14175395)
Or containers! There are definite advantages to having your container's pid 1 be an actual init process (rkt-style) instead of the application being contained (Docker-style), and there are often advantages in that init being a full-featured init instead of a dumb EWONTFIX-style init. (Although I have written and used the EWONTFIX-style init for other purposes, where that led to a simpler architecture.)