this post was submitted on 16 Aug 2024
87 points (100.0% liked)

Linux

48698 readers
1544 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS
 

I've only ever used desktop Linux and don't have server admin experience (unless you count hosting Minecraft servers on my personal machine lol). Currently using Artix and Void for my desktop computers as I've grown fond of runit.

I'm going to get a VPS for some personal projects and am at the point of deciding what distro I want to use. While I imagine that systemd is generally the best for servers due to the far more widespread support (therefore it's better for the stability needs of a server), I have a somewhat high threat model compared to most people so I was wondering if maybe I should use something like runit instead which is much smaller and less vulnerable. Security needs are also the reason why I'm leaning away from using something like Debian, because how outdated the packages are would likely leave me open to vulnerabilities. Correct me if I'm misunderstanding any of that though.

Other than that I'm not sure what considerations there are to make for my server distro. Maybe a more mainstream distro would be more likely to have the software in its repos that I need to host my various projects. On the other hand, I don't have any experience with, say, Fedora, and it'd probably be a lot easier for me to stick to something I know.

In terms of what I want to do with the VPS, it'll be more general-purpose and hosting a few different projects. Currently thinking of hosting a Matrix instance, a Mastodon instance, a NextCloud instance, an SMTP server, and a light website, but I'm sure I'll want to stick more miscellaneous stuff on there too.

So what distro do you use for your server hosting? What things should I consider when picking a distro?

(page 2) 50 comments
sorted by: hot top controversial new old
[–] [email protected] 4 points 4 months ago (2 children)

Dietpi.. For no particular/proper reason other than its (extreme) focus on minimalism.

[–] [email protected] 4 points 4 months ago* (last edited 4 months ago)

@GustavoM @communism I think Alpine is better for a lightweight distro. It's also very minimalist, but without going too bespoke so it's still easy to google a solution.

[–] [email protected] 2 points 4 months ago

Love me some dietpi! Was pleasantly surprised of how smart and easy it was to use 🙌

[–] [email protected] 4 points 4 months ago

Personally, I use Rocky Linux on my servers. It’s stable, and has plenty of support since it’s RHEL-based. It’s supported until 2030 or so, and it doesn’t have any of the cloud-init or netplan stuff that Ubuntu Server has.

It’s also pretty simple to set up docker/podman containers, although you need the EPEL for podman-compose and for a lot of other packages, but once you get your setup the way you like it, it just keeps running and running.

[–] [email protected] 4 points 4 months ago

If you are already familiar with one package manager, pick a distro that also uses that package manager.

When deciding on the release track, the harder it is to recover the system, the more stable the track should be. Stable does not imply secure.

As you move up through virtualization layers, the less stable the track needs to be, allowing access to more recent features.

Steer clear of distros that pride themselves on using musl. It's historically slow and incomplete. Don't buy into the marketing.

Think about IaC. Remote management is a lot more comfortable if you can consider your server ephemeral. You'll appreciate the work on the day you need to upgrade to a new major release of the distro.

[–] [email protected] 3 points 4 months ago

Debian but mostly Ubuntu LTS with the free Ubuntu Pro that gives 10-year support. If I get hit by a bus, chances are the self-hosted systems I've setup would continue to work for years till my family can get someone to support or migrate the data. 😅

[–] [email protected] 3 points 4 months ago* (last edited 4 months ago) (2 children)

Ubuntu server, though I am thinking of using arch even though it is a rolling distro. It doesn't really matter. As long as docker is supported, I am fine using any.

[–] [email protected] 3 points 4 months ago

I wouldn't personally use Arch on a server. The rolling release could cause a lot of problems, especially since you lack the ability to seamlessly integrate older versions of packages like with gentoo masking.

[–] [email protected] 2 points 4 months ago (3 children)

Do you have a plan on how you’d do version controlling on Arch? It’d be annoying to upgrade, something breaks, and you can’t easily roll back.

[–] [email protected] 2 points 4 months ago
[–] [email protected] 1 points 4 months ago

you can’t easily roll back.

This has always been a tricky thing to get right, and half the problem is that so many people don't (yet) realize why it's valuable/important. For many, I claim it's a fundamental problem in their packaging choices that make a roll-back difficult; and even the closest we have - stomping an old package release over the new - is only effective with a perfect replacement of content moving forward and back.

Here's the sad news: no one's done it under linux. The amount of data to convert and revert is daunting. One Unix (not linux) distro did it, but that was around y2k and may have stopped. And they faked it by maintaining configs where the software installation sits and symlinking into the install trees to get binaries from (eg) /usr/install/httpd/1.3.13/sbin/httpd to just /usr/sbin/httpd and /usr/install/httpd/1.3.13/etc/httpdto/etc/httpd` -- you get the idea. They'd convert configs upward but 'revert' by just adjusting symlinks. But even here, config and other changes SINCE upgrading would be lost in the downgrade, and that's an issue.

If we ignore configs, one distro was fantastic in upgrading and downgrading so that while they don't roll back, they roll down if needed. Upgrade your entire OS from v4 to v5? Sure. apt-get dist-upgrade. Want to go down from 5 to 4? apt-get dist-downgrade may have been the roll-down command, but I don't remember. But it worked. Ohh, did it work like a magic trick. And they tested the hell out of it too, as it was their one massively cool feature.

Conectiva ran on that platform for years until it ran low on funds, got the great idea to go in with SuSE and others on a united linux, got the same 'shit kicked over the fence' from their SuSE 'partner' like we got, and ran out of money trying to bludgeon this afterbirth into an OS they could sell (they couldn't). I think this dist upgrade and downgrade feature was lost when they joined mandrake to stay alive and keep their people working, but working with SuSE in United Linux may have sapped their spirit like it sapped ours.

In short:

  • roll-back is hard
  • faking it is hard
  • few have faked it
  • packaging format is a huge reason why
  • RPM can roll down packages but debs and others can't as well.
  • YMMV like your goals may vary. It's all good.

I know my comment here is controversial, and I know someone's gonna look at 25 years of history and be all "what a dick for disparaging Stampede Linux like that" and downvote, and that's okay. I honestly don't want to come off like that, but I am biased from working and supporting linux distros professionally, which may not be valuable to some. Again, all good.

load more comments (1 replies)
[–] [email protected] 3 points 4 months ago

@communism
I use alpine, but void is a good option too, for me the host should be minimal and lightweight. At the end I have all on containers

[–] [email protected] 2 points 4 months ago

Used to be CentOS until the stream debacle. Now Debian.

[–] [email protected] 2 points 4 months ago

I use arch on my servers. It is the distro I am most used too, because I use it also as my daily driver.

[–] [email protected] 2 points 4 months ago

Mint on the Desktop, FreeBSD on the server. Amazingly stable.

[–] [email protected] 2 points 4 months ago

Rocky and now moving too OpenSuse leap micro to move into immutable OS deployments.

Its all RKE2 (a k8s distro) on top anyways, so its very minor mods underneath, and base updates so I really want to maximize reproducibility and minim8ze attack surface.

[–] [email protected] 2 points 4 months ago (1 children)

Devuan. If you need stable, and you like runit, thats the easiest option.

Debian isn't unsecure because security updates for packages are still received.

load more comments (1 replies)
[–] [email protected] 2 points 4 months ago (1 children)

Red Hat, because it's free for developers and used by a lot of enterprises.

[–] [email protected] 3 points 4 months ago (1 children)

Red Hat, because it’s free for developers

Not really.

and used by a lot of enterprises.

Not really. We're moving to a surprising alternative, but the source for a paid enterprise Linux is drifting away collectively from RedHat. It started with 7 - ironically people choosing a 7 equivalent from a clone, like a paid centos almost, just because they were so pissed at the quality free-fall that began with 7. In short, paying a competitor for their clone of a bad release because they're so pissed at RedHat for making that release. Really weird.

Now that RH is starting to wobble and falter, these also-rans are trying to get into the lead as flagship. If RH post-Lennart can't get its quality back up to EL6 level, the cracks will get noticeable. As they keep on pitching every product under the sun except linux, we worry their focus won't get back to it in time and they'll lose the flag - if not already - to someone else.

It's not SuSE. That combination of Slackware and (I wanna say SLS) is an experience, but not a joy. It seems like a good idea, but their culture is still weird for the west.

load more comments (1 replies)
[–] [email protected] 2 points 4 months ago* (last edited 4 months ago)

I won't say which one, but I'll give you a hint as to why:

rpm -Vp https://...

It's what got me off Slackware, and it's true today. If the distro can't support that kind of check, it's dead to me.

[–] [email protected] 2 points 4 months ago

Arch. With testing repos. And somehow, it also just works.

[–] [email protected] 2 points 4 months ago

Been running Ubuntu LTS releases on all my server VMs for 8 years and haven't had a single problem. Absolutely solid as a rock. Fantastic support, loads of guides to do anything. Plus you can get 10years of support as a home user with a free Ubuntu Pro subscription.

[–] [email protected] 2 points 4 months ago (2 children)

I always use Rocky Linux or Alma Linux, since I have extensive experience with enterprise Linux and RPM packages. I have Fedora on my main desktop computer. Both Rocky Linux and Alma Linux are rock-solid and are ideal for any kind of workload.

Also, Debian is a good choice if you know how to manage DEB packages and you feel comfortable with APT.

Fedora is a good choice if you want fresh packages and are willing to upgrade your server every 6 months (following the Fedora release cycle).

Rocky Linux and Alma Linux follow a similar slow release cycle of RHEL, wherein you can install your server and not have to worry for years (as long as the packages are updated with dnf update) Debian is also a slow release distribution, which makes it good for servers.

load more comments (2 replies)
[–] [email protected] 1 points 4 months ago

I'm currently using debian with Docker.

If I were to do it again, though, I'd probably just use either fedora or the server equivalent to silverblue (I can't remember the name). I am so heavy on docker use at this point that I wouldn't mind going full immutable.

[–] [email protected] 1 points 4 months ago

debian proxmox

load more comments
view more: ‹ prev next ›