My household primarily runs Arch and Artix for our desktop OS and never have any issues with it, however we have had no end of issues with our home server* and it often ends up being related to systemd.
I am ideally looking for something that can just be left and updated less frequently that can also run docker containers, ideally using OpenRC but can also occasionally run a package on the host system. I’d prefer something GNU as well.
Please don’t reply with any “systemd works fine for me” or “what is your problem with systemd” like most that a search turns up.
Edit*: Probably should have mentioned that its been on CentOS, Ubuntu and then OpenSuse Leap
This is an AB problem in which you’re going to eventually solve the actual problem that isn’t actually systemd after looking real hard at ways to replace systemd.
Or else you’re going to find yourself in an increasingly painful maintenance process trying to retrofit rc scripts into constantly evolving distributions.
There’s a lot I prefer about the old SysV, and I’m still not thrilled that everything is being more dependent on these large monolithic daemons. But I’ve yet to find a systemd problem that wasn’t just me not knowing how to use systemd.
I would like to know the problems you’re having with systemd, but since you wouldn’t like to explain…
TBH with all the shit I give Poettering, systemd is a good system for the most part, it’s just ideologically not for me, and it’s also really complicated from people who have worked on it.
With that said, I’d point you towards Alpine. I once ran a server in the cloud with it and have no issues other than if you were to use musl, but if you’re using GNU I don’t think you’ll have such issues.
Why aren’t you trying the BSDs? FreeBSD is quite stable and if you’re going to run VMs anyway, run a couple to host your k8s infrastructure/podman nodes and off you go!
Switch to a stable Linux distribution like Debian Stable or Ubuntu LTS. The issues you’re facing are much more likely caused by new package defects instead of the init system, or new defects in the init system packages. Switching the init system but keeping rolling will change the where and how defects crop up. Switching to a stable distro will nearly stop new defects from cropping up altogether till a major version upgrade. Which is measured in years. In the case of Ubuntu LTS, 5 years by default and 10 years if you activate the free Ubuntu Pro. That’s the easiest way to stop servers from breaking and having to watch over them.
Yeah, rolling release on a server sounds horrifying. You couldn’t pay me enough to live that nightmare.
There’s a reason “enterprise” server distros exist. Install LTS release once every 2, 4, or 5 years depending on taste, login to update as you remember the machine is even running an OS, and just generally forget the machine exists for several years at a time.
It’s how I do. Unattended security upgrades in tow.
Stop using a rolling release distro for something that you actually rely on day-to-day.
I was trying to say that my desktop on Arch works fine but my server has been running various different distros being Ubuntu and OpenSuse Leap most recently.
Try Debian
Docker containers often need to be restarted if they crash, I’m not aware of a solution for this that isn’t a monolithic service orchestrator, like systemd, dockerd, or containerd.
Yeah, that container probably crashed because of atmospheric disturbance.
restart: unless-stopped
works for automatic restarting of crashed containers.That requires running either systemd or dockerd to work.
I’m just curious, what’s your reason or preference for using an alternate init system, if you don’t mind?
I think op explicitly stated they don’t want to diskuss the “why not systemd?” thing.
Which is dumb. “Please help me solve this problem I don’t want to talk about.”
TO has personal problems with x and looks for alternatives to x, not for solutions in x.
debian can be used with sysvinit, runit, or openrc. another good option is gentoo. yes im seriously recommending gentoo for a server. i have a few friends that use gentoo for their server os and they all say its great. its very stable as long as you stick to the amd64 branch instead of ~amd64. if you dont want to get into the kernel stuff you can easily use a -bin kernel.
I’ve been using Void Linux for my home server for a few years now. It uses runit instead of OpenRC, and I haven’t had any problems with it. I would recommend the glibc version over the musl version.
Got 1 VM using KVM (Home Assistant), about a dozen docker containers, and a couple of services running on their own.
I am ideally looking for something that can just be left and updated less frequently
You might want that but security holes happen every day and need to be patched asap. Honestly, if you want to spend the least amount of effort use a stable distro like Debian stable and just use the package manager to update, a lot less effort than replacing entire containers for everything all the time.
I use Devuan and it’s just Debian without systemd.
I use artix for my work and personal servers. There are a few kvm hosts and several virtual machines with internet facing services such as dns, web, mail, wireguard. On the way to be fully gitopsed with ansible. Sometimes I borrow specific packages from arch repos but almost everything can be made with artix alone. The only notable issue I had was with cloud-init which I replaced with more complex playbooks and bash scripts. Ama
Acronyms, initialisms, abbreviations, contractions, and other phrases which expand to something larger, that I’ve seen in this thread:
Fewer Letters More Letters LTS Long Term Support software version NAS Network-Attached Storage SSH Secure Shell for remote terminal access VPS Virtual Private Server (opposed to shared hosting) k8s Kubernetes container management package
5 acronyms in this thread; the most compressed thread commented on today has 9 acronyms.
[Thread #511 for this sub, first seen 14th Feb 2024, 19:15] [FAQ] [Full list] [Contact] [Source code]
Systemd is well supported and simplifies everything. Why would you not want it?
i think init files are simple. i’m still not used to the systemd syntax and i switched whenever ubuntu did.
Honestly your probably shouldn’t be writing your own init scripts. That is bad practice and there are better ways of doing things.
Also just to reiterate systemd is so much faster to boot and manage. Everything is sandboxed properly and dependency management is handled for your. You literally can install a package and then start the service. (Although containers are the better option)
And it has a CVE about each month. Which is more than other init have in their lifetime.
Read the last paragraph.