Originally posted by AJSB
View Post
Announcement
Collapse
No announcement yet.
Arch Linux Is Switching To Systemd
Collapse
X
-
I like the fact that systemd monitors daemons and if they fail restarts them without needing additional tools, scripts etc.
Fast booting is handy when on a notebook and travelling to quickly lookup information as your not supposed to leave things suspended when on planes.
Yes, the many breakages in Arch have been frustrating of late (on the weekend I lost all the files in /data due to a package upgrate of mariadb), but generally its pretty good and for my home server systemd will ensure the kids can watch TV via myth without the backend being down when I'm not around.
Comment
-
Originally posted by johnc View PostSo what makes systemd so awesome?
* Much more sophisticated structure. sysv gives you...services, and five runlevels, and that's about it. systemd gives you targets, which you can have as many of as you like, and which can be nested, and which can have dependencies.
* Oh yeah - it has dependencies. So services can be ordered properly and parallel started. upstart has this too, of course, but it still beats sysv.
* It has _far_ better monitoring / investigation / debug tools than sysv, though some people don't bother to actually look it up so just assume it's 'harder'. It's actually much easier to know what's going on with systemd. I can list out all active units (services, more or less) with 'systemctl'. List out all installed units, even inactive ones, with 'systemctl --all'. List out failed services with 'systemctl --failed' - so it's super easy to see if any services failed on start, and which ones. Get detailed info on a specific service - including its state, all its processes and sub-processes, and log output if journal is running - with 'systemctl status servicename'. There's way more than this, this is just scratching the surface.
* It has all sorts of cool capabilities for services. Literally tons of them, here's just a random sample. They can be set to auto-restart if they crash. You can have a service only start up if a given path exists, or a given path is a directory or a symlink, or if a specific kernel parameter is given, or if you're running in a VM (it even extends to specific *types* of VM). And you can invert all of those. You can set pre- and post- initialization commands for services. Services can set their own timeout values.
* It does socket activation of daemons. What this means is that you can have a service associated with a given daemon: the service is set to 'start' on boot, but it doesn't actually run the daemon until something tries to access it - either via a given TCP or UDP port, or via a specified dbus method. So you save system resources until the daemon is actually needed, and boot is faster.
* It has some really neat built-in charting tools: you can generate a bootchart right from systemd, and even cooler, you can generate a dependency map for the entire startup process, graphically depicting the relationships between services.
systemd is freaking awesome. I don't want to get into whether it's better than upstart, because I don't know anywhere near enough about upstart. But it absolutely does have all _sorts_ of improvements over sysv. I highly recommend you read about it; systemd has excellent documentation.
Comment
-
Awesome.
Forget all the FUD and hate. systemd is an absolute pleasure to use, and it works great with arch and has for months now. Arch is making the correct decision here, systemd is very advanced and fantastic. It is not hard to use by any means at all, I'd even say it is simple. I am very pleased with this development.
Linux seems to have a lot of whiners these days, usually uninformed to boot. I converted by Arch systems over months ago, and haven't an any issues. There were a few missing service files -- but I found them on the wiki or directly from the developers pages.
Arch will be made better by this, and people should be happy with that.
Comment
-
Originally posted by bwat47 View PostI really hope you are being sarcastic.
....but NO, i wasn't sarcastic about my PC running Slackware is always ON in 24/7
Comment
-
Originally posted by blackout23 View Post2.8 Seconds. Case closed. Kernel + Userspace
Probably could save some time by adding "quiet" to kernel line because console slows boot down.
I like systemd it's not harder to use systemctl start xy.service than /etc/rc.d/networt start other than that
in my day to day work I don't encounter any advantages or disadvantages. Kind of miss the old rc.conf though.
When I set up my PC with the new install scripts I had to look up all the different files and what they contain.
Most of them don't exist when you set up you pc. A blank rc.conf with LOCALE= HOSTNAME= etc. makes it
easier to get everything pre configured without having to remember anything.
All in all however, I found systemd confusing, complex and messy. In time, I'm sure I'll get used to it
As for running your PC 24/7, unless it's a server, is just silly. It is very wasteful. I have a laptop, that gets put into standby whenever I don't use it. And my desktop I actually shut off when I don't use. My servers obviously run 24/7
Comment
-
Originally posted by oliver View PostI have only played with systemd for about 5 minutes, but what I 'miss' is what makes /etc/init.d so handy, is that you can use tabtab to help you find available init scripts (on gentoo anyway). With systemd they are all hidden somewhere less easy. I guess it's just some getting used to.
All in all however, I found systemd confusing, complex and messy.
A good read is Lennart's series of blog postings "systemd for Administrators" starting with Part 1.
Comment
-
Originally posted by oliver View PostI have only played with systemd for about 5 minutes, but what I 'miss' is what makes /etc/init.d so handy, is that you can use tabtab to help you find available init scripts (on gentoo anyway). With systemd they are all hidden somewhere less easy. I guess it's just some getting used to.
sudo systemctl restart post[tab] => sudo systemctl restart postgresql.service
But it doesn't seem to always work well yet...
Comment
-
systemd works fine here. I don't see what the fuss is all about.
As for being Linux-only: systemd only adapts launchd principles to Linux (which is why software already modified for launchd only required a very small patch for systemd). There was a GSOC project years ago to port launchd to FreeBSD. To support that move Apple even changed launchd's license from the LGPL-like APSL to Apache License 2. The FreeBSD devs, however, decided not to pursue the launchd integration any further which made the whole GSOC project go to waste.
If BSD users/devs/whoever bitch at systemd being Linux-only, they are the ones to blame for letting launchd on FreeBSD rot.
Comment
Comment