Choosing a Linux distribution

4

Dangerous territory with this question so please try to be impartial and instead focus on what to look for when choosing a Linux distribution.

I'm completely new to Linux. I thought it'd never happen but I need to have a Linux box to play with and I have a spare fanless Atom PC (32-bit only).

I'll be using the machine as a non-commercial hobby server, the trouble is, I don't even know how to compare Linux distributions and why people pick one over another.

If anything, I want to have an easy install from USB stick.

My question is: what do you look for when choosing a (free?) Linux distribution for a server?

If you can, please explain what sorts of things actually differ between one and another without saying which you think is better, just the facts.

The way I see it, Linux as a server is just an SSH console and I find it hard to imagine what could be different between one and another.

Luke Puplett

Posted 2012-11-29T21:22:43.433

Reputation: 981

1Unfortunately as interesting as these sorts of questions are, they do not fit the paradigm here at Superuser. They invite long protracted discussion which is not the purpose of the site. – EBGreen – 2012-11-29T21:27:15.620

2

This appears to be worded in a rather constructive way. I wouldn't close it right away. Luke, maybe take a look at Good Subjective, Bad Subjective for a few tips on how to ask a good subjective question. As long as it's not open-ended and asks for specific expertise and backed up claims, we're fine, and I guess many people could benefit from a canonical answer here.

– slhck – 2012-11-29T21:30:04.690

1@slhck Yes, Luke did a good job wording the question constructively. It's the topic that's unconstructive. Any "what should I get" discussion is bound to be subjective and contentious. Add geek loyalties to their favorite distro and wackiness ensues. – Isaac Rabinovitch – 2012-11-29T21:40:29.110

3

@IsaacRabinovitch The question is not "What should I get?", the question is, "What should I be looking at when I'm choosing?", which is the kind of question we encourage (see also What do I need to consider when buying hardware to meet my needs?)

– slhck – 2012-11-29T21:47:59.613

Answers

13

Since you mention specifically for a server, I would suggest the following go into the decision process:

  1. Stable vs. Bleeding Edge Releases

    There are a lot of folks that love "Bleeding edge" releases (such as ArchLinux or Fedora). What that means, however, is that they are essentially the continual Beta Testers for Linux releases. Of course, there can be benefits to this thought process for certain applications. The other end of the spectrum would be Debian with only stable releases (unless you're in the Tumbleweed sub-set). The cycle is slower to be pushed through. Even a step below that would be OpenSuse, at least in my experience. The repositories had old stable versions of software (example: Python 2.4.3 when 3.2 came out and 2.7 was the standard stable).

  2. Package Manager

    This seems to be the #1 thing I read about when I research Distros. Everyone claims to have an "advanced and powerful" package manager. When it comes down to it, many of them are fairly similar.

    Most have some sort of search function and the majority resolve dependencies for you, which would probably be very helpful for you just starting out. For a headless server, you would probably want one with good search functionality. (Anything Debian based would be aptitude <searchname> Arch's pacman is pacman -Ss <searchname>, etc.)

    Additionally, over the past several years - various releases have been rolling out GUI managers. (Ubuntu's Software Center, Mint has a version, etc.)

  3. GUI - Though this is semi-moot (or fully on a headless server).

    Another item would include the preferred GUI (Graphical User Interface). The classic two are KDE and Gnome. However, there are many forks of Gnome now. The reason I say this is semi-moot is because you can change this on any distro relatively easily. Other options include Openbox (lightweight, fairly advanced), Mate (Gnome2 Fork), Cinnamon (Gnome3 re-mix), Unity, LXDE (lightweight, Gnome2-esque), and XFCE - of course there are others but these are the main players.

    As a server, you could do a text based install (which shows a "GUI" using NCURSES in the terminal.) Most distros feature a text-based install.

  4. The community

    Linux can be tricky at times, and it is extremely helpful to have a community behind you when you hit issues. While the Linux Kernel is mostly standard across the same kernel version, the way the Distro handles it may be different. So an active community wiki and commonly discussed distro is helpful.

Those are the first major things I can think of for you. Add in the obvious idea that you probably don't want to build from scratch (yet).

In a server application, under the above specifications - I would suggest Debian as a server. Another fairly good option (with a smaller community) is OpenSUSE - however, I didn't like Suse on my server.

Distrowatch may be a fairly good resource to give you a list of too many distros. Just note most of them are based on another (such as: Mint based on Ubuntu, A few based on Debian, and so-forth).

Edit All are easy to go onto a USB to install from. You could use Unetbootin or Multiboot

nerdwaller

Posted 2012-11-29T21:22:43.433

Reputation: 13 366

1Brilliant. Exactly what I was looking for in an answer, thank you. – Luke Puplett – 2012-11-29T22:03:57.720

@LukePuplett It's hard to find objectivity in Linux fans. Linux people tend to be very loyal. I am still searching for mine - so I am in a similar boat (with a different end goal, of course). – nerdwaller – 2012-11-29T22:06:29.813

4

As always, it depends on who you ask. For instance, I work mostly on my laptop, so I tend to lean more towards minimalistic distros (Arch, Slackware, Gentoo). I'm trying to force myself to be more comfortable without a mouse, so I installed i3-wm (a lightweight tiling window manager) on arch, instead of the more heavy duty gnome/kde.

If you're completely new to linux then I think the popular answer would be to start with Ubuntu or Mint and start pokin' around. Familiarize yourself with the CLI, learn an editor (vi comes with most distributions). After learning your way around and getting comfortable on the command line you'll be in a better position to choose what's important to you and search out a distro that suits your purposes. It is unlikely that you'll want to stick with ubuntu/mint as you progress, but the installs are straightforward and will get you a working internet connection, editors, X, and all the bell's and whistles that come with gnome/kde. Wubi will get you started from inside a windows environment, or you can easily create a usb install disk.

There are so many options out there, and it's all going to come down to preference. Knowing what you want/need is going to come with experience. Start simple, and get your hands dirty, then pick the tools you need.

Edit: In response to "Where to Start?" questions, in terms of linux, ubuntu is probably the most common answer given, and not without reason. Everything you are going to need to get up and running is going to be there, following a rather straightforward graphical installation process. A popular internet browser, graphical network and hardware configuration tools, and an impressive software center for downloading packages come default, not to mention a giant community of users where most questions have already been answered somewhere on the web.

While the CLI/bash is indeed the same for nearly every distro, it can be daunting for a new user to be faced with nothing but a command line. IMHO having a terminal open in gnome next to an open browser with a tutorial or at least google, is a much more productive learning environment than the CLI of a fresh slackware installation.

On the other hand, it is for some of these reasons that some users choose not to use distributions like Ubuntu/Mint. These kinds of distributions can be referred to as "transition distros", because nearly any linux newcomer can run a default install and find what they need. These needs are satisfied in the way of software (packages), so a please all distribution comes with alot of software that an individual user may not need. Products like gnome and kde come with lots of dependencies and consume lots of resources.

The more minimalistic distro's that I referred to (arch, gentoo, slackware) focus more on a core system without all the extras. The defaults are pretty much only what you need to get up and running. This approach can allow for extensive customization based on user preference and system resources. Being able to build my system from the bottom up allows me to remove some of the fluff that is going to consume resources on my slower machine. For instance, Gentoo's approach to software management (portage), downloads a package's source and unpacks, compiles, and installs it. Through the use of USE flags a user can specify which features a package should support. For instance, on my laptop I use neither gnome nor kde, so not only would I not install those packages, but I would disallow support for those environments in my other packages. Distro's like this come with a much steeper learning curve, and tend to require some unix knowledge to get going.

In your first linux system, you should be looking for:

  • A simple installation process, that will get you up and running and learning in a short amount of time with minimal hassle.

  • A package manager that will make it easy for you to find the software you need and handle dependencies.

  • An environment that will suit your system and preferences, whether it be full fledged guis like gnome/kde or X with lighter weight dwm/awesome/i3.

  • As mentioned above, stability. Which comes not only from the distribution, but also from the quality of configuration.

  • An environment that supports your learning the basics. While a server could be setup on a gentoo box with a custom configured kernel (though some may discourage it), this would probably not be an environment conducive to your initial phase of learning.

Many linux users float around distributions so often that it is unlikey you will pick one to stick with right away. The important thing is to quickly build a foundation on the fundamentals that will ease this floatation and help you make informed decisions. Please know that I am not trying to promote any one distro in particular, but mean only to support your learning process and help you get started in a way that encourages you to continue participation in the linux community. I apologize sincerely if my original post, or this edit, are vague or miss the point of OP question.

marquezc329

Posted 2012-11-29T21:22:43.433

Reputation: 51

4Instead of recommending certain distributions, could you maybe explain why they are considered "minimalistic" and why that makes them better for laptops? What makes the window managers so important? Why would one start with Ubuntu or Mint when the CLI (or bash) is the same for almost every distro? You mention "search out a distro that suits your purposes" – well, that is exactly what the OP asks for. – slhck – 2012-11-29T21:50:05.887