• renzev@lemmy.worldOP
    link
    fedilink
    English
    arrow-up
    16
    arrow-down
    6
    ·
    3 months ago

    I’ve gotten into quite a lot of systemd-related flame wars so far, and what strikes me is that I haven’t heard a single reason why systemd is good and should be used in favor of openrc/sysvinit/whatever. The only arguments I hear in favor of systemd, even from the its diehard defenders, are justifications why it’s not that bad. Not once have I heard someone advocate for systemd with reasoning that goes likes “Systemd is superior to legacy init systems because you can do X much easier” or “systemd is more secure because it’s resistant against Y attack vector”. It’s always “Linus says it’s allright” or “binary logfiles aren’t a problem, you can just get them from journald instead of reading the file”, or “everyone already uses it”.

    When it comes to online discourse, systemd doesn’t have advocates, it has apologists.

    • pmc@lemmy.blahaj.zone
      link
      fedilink
      arrow-up
      21
      ·
      edit-2
      3 months ago

      Well, I’ll tell you that I prefer systemd because I can comprehend its declarative unit files and dependency-based system a lot better than the shell script DSLs and runlevels that I’ve had to mess with in other init systems. systemctl status has a quite nice output that can be really handy when debugging units. I like being able to pull up logs for just about any service on my system with a simple journalctl command instead of researching where the log file is.

      • renzev@lemmy.worldOP
        link
        fedilink
        English
        arrow-up
        1
        ·
        3 months ago

        Thank you for the detailed response, very informative. You make a really good point about centralized logging, I can see how that can be very helpful when you run A LOT of different server process on one machine. I get centralized logging as a bonus of running everything in Docker, but I can see how it is nice to have logging as part of the init system if you want to run a lot of services natively.