this post was submitted on 25 Jul 2023
77 points (94.3% liked)

Linux

48334 readers
619 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 come across Red Hat allot lately and am wondering if I need to get studying. I'm an avid Ubuntu server user but don't want to get stuck only knowing one distro. What is the way to go if i want to know as much as I can for use in real world situations.

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 2 points 1 year ago (1 children)

Debian needs to focus more on automation if they want more penetration in the enterprise. Debian feels made for human admins logging in and managing things old school style which is fine for a few machines. Modern enterprises use Ansible etc and need highly functional non-interactive ways to install and configure etc. Preseed and Apt leave something to be desired here.

[–] [email protected] 1 points 1 year ago (1 children)

What has automation to do with a distro? You can automate any distro. Ansible runs on any linux.

[–] [email protected] 1 points 1 year ago (1 children)

A distro can make automation more difficult than it needs to be. As I mentioned in my examples, Preseed sucks, have you ever used it? And of course Ansible works on pretty much any distro, but Debian family distros are made with the expectation of user input, such as expecting configuration values during package installation and this has to be worked around. It's not impossible, just more work and testing. When you're automating CentOS and Ubuntu next to each other, you'll realize extra Ubuntu related code.

Not a big deal, it's just minor preferences.

[–] [email protected] 1 points 1 year ago (1 children)

but Debian family distros are made with the expectation of user input, such as expecting configuration values during package installation

Any examples? I never installed such a package.

[–] [email protected] 2 points 1 year ago

It's been a long time, if I remember correctly one of them is Postfix. Again going from memory that's at least five years old, when installed in say Ubuntu, you get asked questions, like what you want your mailserver hostname to be, whether you want to configure a relay, etc. This is fine if you know the answers at install time and you're around to answer the question, otherwise your automation will hang indefinitely if this is not worked around.

Now also IIRC, there are ways to work around this, such as by providing the answers in your automation for the package install step (but then you're mixing partial postfix config with the package install and the remainder of the config is separate, feels weird) , in some cases it' might be simply an apt option, but like I said, it takes extra code in your automation which is not necessary on RHEL based distros. Installing a package in Ansible can be 3 short lines of code, for Deb based it's like 10 lines.

Doing this for one package isn't such a big deal, but when you find yourself having to work around things and writing extra code for one specific distro/family it becomes clear it wasn't made for automation and unless you have a personal affinity for it, it's just a bit easier to use something else.

This is not a diss, it's not a bad thing for a distro to made for humans, it's just in that the environments I work in, managing hundreds of machines with Ansible and having a significant code base I prefer to have my code smaller and cleaner.