loading...
Cover image for Which Distribution of Linux Should I Use?
Pluralsight

Which Distribution of Linux Should I Use?

jeremycmorgan profile image Jeremy Morgan Updated on ・8 min read

So... which version of Linux should I install on my brand new machine?
Click here to vote!

I'm often asked this question: "Hey, you're a Linux dude right? What Linux should I use? I have this friend who recommends (insert distro here) and I want to know what you think?" I usually reply with the same question: what do you want to do? So I decided to write this as a guide to what type of Linux you should choose.

My History with Linux

I should probably preface this article with a little bit of my history with Linux, in case you're reading this and you don't know me (very likely). You can skip this if you don't care.

Slackware Linux

I started out using Linux around 1996. My first Linux was Slackware 4, a set of CDs I purchased at Egghead Software (yep, I'm old). A friend of mine told me about this Unix like thing that was so great and I just had to try it and he thought I would love it.

I read a lot about Unix and was very curious about it. I had a shell account at my internet provider and I'd tinkered around, yet at first, I was a bit hesitant. "Why would I need this?" His reply was simply: "Because you hate Windows 95 so much and love DOS, you'll love this". So I bought it. He was right.

I took an old hard drive I had and installed it. I fought with it for hours, then days. I finally got a desktop up and running. I have no idea what drove me in this time, but I had to figure out how to make this system work, and it was difficult.

I had to know so much about my hardware! Simple things were suddenly hard again. But I pushed through, and I got my desktop up. And I started building some silly scripts for fun. The system was fast, and I could change nearly everything about it.

It had a built-in C compiler? I just bought some really expensive Borland package for this I could barely figure out. But this OS had a compiler built-in? A free Image editor? I was hooked!

Old picture of people using Unix

For years after that, I experimented with tons of Distributions. Even BSD Unix ones. My "main computer" was always a dual boot, and some of them were pure Linux. Most of the early 2000s, I avoided Windows completely. So by year, I can break it down to my "main machine", it would be:

  • 1996-1999: Slackware
  • 1999-2002: Redhat (and FreeBSD)
  • 2003-2005: FreeBSD / Knoppix
  • 2005-2009: Gentoo
  • 2009-2011: Linux Mint
  • 2011-2018: Arch Linux / Debian

I've used 50 or more distributions in my time, but this was what was running on my "main machine" I used for work, or browsing, or development or whatever. Obviously Arch had the longest run so far, mainly because I could just configure it and forget about it for long periods of time.

But the main distro for my "real work" the last few years has been Arch Linux.

Enough about me, let's talk about what you should use.

So What Do You Want to Do?

I'm going to put these in categories based on common needs. There is some overlap here, and with enough effort, any of these Linux distributions will work for your desired needs. One of the great things about Linux is you can make it whatever you want. But some distributions do a lot of that work for you or have a design that works better towards certain goals. I'll present these in categories based on the easiest path to reach your goals.


I'm a Linux Newbie Just Getting Started

Linux Mint

For a long time, I recommended Ubuntu for this. As far as ease of use and compatibility it was great. But I avoid Ubuntu now. I still use it for demos in my courses and articles because so many people use it, but I am not a fan of the way they run this distribution, the built-in Amazon adware, and Unity is annoying.

So if you're just starting out I recommend:

It's kind of a cheat because Linux Mint is built off Debian, but Mint looks prettier and has some nice cross-platform stuff.

Use these distributions if you want:

  • A Windows-like experience
  • Something simple to install
  • Something reliable
  • Something "Linux like" that doesn't deviate from the norm
  • Something that "just works"

Ok so that last one is really important. It just works. These distributions are mostly plug and play. Set them up, and forget about it. I have become increasingly reliant on Debian for my development machines because at times I don't care about the OS and I don't want it to get in my way. When I'm in a mood where I just want to build things, it can't be beat.

If you're just starting out, this course on Linux Installation and Initial Configuration may help you out a lot.


I Want to Learn More About Linux and My Hardware

Alt Text

Maybe you're in the mood to play and experiment. You want to challenge yourself and force yourself to learn by doing. That's great, it's exactly what I did.

If you want to challenge yourself and learn I recommend:

Each of these distributions requires a lot of configuration, hardware discovery, and compiling of source code. With Gentoo, you have to compile everything. It's a great way to have absolute full control over your operating system.

Use these distributions if you want:

  • Full control of your computer and OS
  • To learn about Linux internals
  • A lean and mean optimized system

This comes at a cost: mainly your time. A full install of these can take hours. On the plus side, they tend to run forever.

I had an Arch Install on a Lenovo that took the better part of a Saturday to configure, and let's say another 10 hours or more spread out after that. It ran nearly effortlessly for 5 years (until the laptop hardware died). I only had to do a few updates once in a while, but I used it reliably every day for 5. Long. Years. So in a way you can look at it as an investment.


I want Cutting Edge Stuff

Alt Text

Ok maybe you want the latest greatest software and you don't care how stable it is. You want to do some kernel hacking or some other cool thing that some coder committed yesterday.

To hell with stability and security you want the newest thing now.

Use these distributions if you want:

  • To trade risk for the newest stuff
  • The latest and greatest features always
  • Fun configuring things to work with breaking changes

To be fair I've personally used Arch and Gentoo without significant stability problems, but I was risking using the bleeding edge stuff on rolling releases.


I Just Want to Get Some Work Done

Alt Text

Ok maybe you don't really care about the OS particulars and just want to GSD (Get Stuff Done). Maybe you have some Node or GoLang apps you want to build and heard Linux is the best for it.

These are great for getting work done:

Use these distributions if you want:

  • Smooth operation with low maintenance
  • Minimal configuration
  • Things that just work mostly automatically
  • Compatibility with hardware and software

As I said I often use Debian these days as I'm usually just making something and don't really feel like tinkering around and optimizing. It's stable, fast, and stays out of my way. I'm writing this article in Debian 9 right now.


I Want to Set Up a Server

Alt Text

Maybe you want to set up a web server or virtual host and don't know what to use. The first one on this list is the dominant distribution for web hosting, so if you want something that mimics the site that's hosting your software try CentOS (or learn Docker!)

These are solid and reliable for web hosting:

Use these distributions if you want:

  • Stability
  • Security
  • Support from other people using it for the same reason

I believe any Linux distribution can be used for web hosting effectively, but some take more work than others.


I Want the Most Performance Possible

Clear Linux

So if you're one of those types who want to squeeze out every ounce of performance (I've been there) these are great for you. Some of these require compiling all the source code to produce binaries optimized for your processor(s). Fun stuff!

Use these distributions if you want:

  • Fast performance
  • High Load Computing

Keep in mind that hardware has reached a performance point where these don't matter quite as much as they used to. 15 years ago you could hack a kernel and dial in your services and see a big boost. These days, the difference is negligible. Any Linux will be pretty snappy.


I Want a Secure Desktop

Tails Linux

Maybe you want to set up a system that's hard to break into, for whatever reason. There are a couple of distributions with security as a top focus. If you're really concerned about locking down your main machine, these are great ones to look at.

Use these distributions if you want:

  • Security
  • Anonymity

I Want a Minimal Computer System

Alt Text

Ok, sometimes you just want something lean and mean that gets a certain job done. I definitely understand this. Maybe you have an old Pentium you want to re-purpose. Sometimes the OS is just a small part of your goal and you want the bare minimum.

Use these distributions if you want:

  • Something that will run on old hardware
  • Something minimal as possible

Conclusion

I hate to sound like a broken record, but you could just pick out one of these Linux distributions and make it whatever you want. That's the nature of Linux, its customizable to the furthest degree. But these are great distributions for getting started fast.

If you want to learn more about Linux, Pluralsight has a ton of Linux Courses including a really good one for starting out, Linux Installation and Initial Configuration

If you think I've missed the mark or left out a distribution feel free to leave me a message in the comments, or yell at me on Twitter.

And whatever you do, if you reached this page because you're curious about Linux, try it out!! Now! These days you can download something like VirtualBox (free of charge) and try it out before really committing to anything. It's definitely worth your time to check it out!

Posted on by:

jeremycmorgan profile

Jeremy Morgan

@jeremycmorgan

Silicon Forest Developer/hacker. I write about .NET, DevOps, and Linux mostly. Once held the world record for being the youngest person alive.

Pluralsight

With our technology skills platform, companies can upskill teams and increase engineering impact.

Discussion

markdown guide
 

Nice one, Jeremy... lemme add this one:

I Want to Save Myself The Headache

Use Ubuntu

 

Pop has had fewer headaches for me so far.

 

I've been using Pop too, but didn't see it on the lists in the article.

My profile is: user who wants to migrate away from Windows and all that baggage.

I've really enjoyed Pop OS, it made it to switch.

I've been looking at POP, but I haven't tried it. As a rule I only included distros in this article that I've spent real time with over the years.

It's on my list.

After only 4 months of usage, I really like POP. So far I had zero problems.

 

I only had headache using Ubuntu. When something breaks in it, seems like your diving into a mess of stuff you can't relate and can't find what is really breaking your system. I had more joy using Fedora. But that's my experience, I've met people which had far worse experiences using Fedora.

 

I've been satisfied using Ubuntu without Unity and using LXDE instead (Lubuntu). Unity is absurdly slow and a memory hog.

 

Ubuntu and no Headaches? Sounds nice but is far from reality 😂. I switched because of their unreliability...

 

Just curious why you didn't put Manjaro on here. It's the easy to use arch. Ease of install is great.

 

My reasoning for that is I don't really know much about Manjaro and I wanted to only speak to distros I have experience with. I actually read an article about Manjaro and spun up a VM with it last night. I may play around with it and add it to the list. An easy to install Arch could be pretty appealing.

 

It really is. Your Linux/bsd history is almost identical to mine over about the same amount of time. I've finally settled on a desktop distro. I'd never use it for a server, but it's great to have a full desktop distro after clicking a few buttons and then have Pacman, pamac, and sure right there. It's really the best Linux experience I've had in YEARS.

Nice. Yes, pacman is one of the things I really love about Arch. It works so consistently easy. I know others have had issues with it but I've been really lucky apparently.

I would like to add, if you're looking to play games on Linux, Manjaro is your best choice. Thanks to Manjaro Hardware Settings installing the proprietary drivers for your GPU is a breeze. Plus you get all the Arch goodness, including the support if can't find a solution on the Manjaro Forum, the Arch solutions work exactly as well.

I have had, and tried a ton of distros. I have used Fedora for the longest (26, 27 and 28), tried Debian, Ubuntu and PopOS, even Kali (for... reasons). And none compares to using Manjaro, it has been a great experience so far, and the first distro that made me completely switch from Windows.

 

Used to use Fedora but a year or so ago switched to Ubuntu. Great drivers, auto-updates and everything just works :) So yeah, if you don't want to spend time on configuring your OS, go with Ubuntu.

 

Also worthy of note: Ubuntu has dropped Unity since 18.04 (so the April 2018 Long Term Support release), running gnome 3 instead.

 

I was going to say this exact thing.

 

Solus is a nice one for beginning linux users.

 

+1 for Solus! I enjoyed my time with Solus during my quest for a distro.

 

Yep. Couldn't be any happier with it. 🙂

 

Interesting you list Alpine as a security distro (and it is: there's sod all on it you could use as a tool for exploits...) but not as a minimal install. Everything I've seen Alpine used for the selling point has been container size.

 

I am currently using Linux mint for Android development in android studio everything works fine now. I had a lot of issues in Windows, mainly while building,but now I am happy.
Should I switch to Debian or fedora,are they even better?

 

If Mint is working for you now, there's not much to gain other than small differences. Mint is Debian under the hood. So you're using a different GUI over Debian now.

I used Mint for a long time and really liked it. It's very solid and looks nice to boot.

 

hello, I don't understand.
what do you mean by "Linux Mint is Debian under the hood"?
in today's date, you meant Linux Mint 19.2 Tina Cinnamon based on Ubuntu is configured like Debian OR Linux Mint Debian Edition 3 Cindy Cinnamon is Debian under the hood?
thank you
awaiting your reply

Ubuntu is actually based on Debian, so, Ubuntu is Debian under the hood, so, Mint is Debian under the hoodie-hood...

In other terms, a syllogism: Ubuntu is based on Debian, Mint is based on Ubuntu, so Mint is super-based on Debian :)

Yep, and you can even get LMDE which is directly based on Debian

 

For a "Windows-like experience", you recommend Mint or Debian. As a long-time Windows user, I don't find either of these to be very Windows-like at all.

What do you make of distributions that were specifically designed to resemble Windows? Like Elementary OS or Zorin?

I recently tried Zorin and was very pleased with the overall experience - it's like Ubuntu when I'm in the shell, and like Windows when I'm on the desktop, which is just what I've always sought after.

I did have some hardware problems initially, but it seems to me everyone has that with Linux, unless they specifically bought the hardware to match the OS? (Sadly, this appears to be one of the ways that the Linux experience will never really match the Windows experience.)

 

Elementary looks more like Mac and behaves more like os2. It's nice enough. I had a few issues when I ran out on a backup box.

 

if you want Windows like Experience on Linux Mint with Cinnamon then try Feren OS.

 

Good information. I just started looking into Linux after watching one of Chris's videos and researching distros. I even learned how to install Lubuntu and Linux Mint through a USB! Currently, my old laptop has them both installed. I'm really just playing around to get the feel of it.

There's a lot of good documentation out there.

 

Very nice overview.

From beginning of epoch, I've sticked with Debian because it is actually the easiest (opposite to what many people believe) and the most comprehensive distribution (and also cutting-edge if you go with sid). And more recently (like 6 or 7 years ago...), Arch, for some other reasons (structure, philosophy, organization, customization that is like mandatory, but actually made simple for not-so-newbies people, and well thought). Actually, for a newbie I think Fedora is a great option nowadays too (I've never been a huge fan of KDE anyway). I am not old/patient enough to have tried Slackware or Gentoo, I don't think we could modernly recommend it. I tried FreeBSD but, never used it much. I like the general idea and philosophy, I'd love to have more time to dig into it. For most server purpose nowadays, I go with Ubuntu LTS, because, it's is basically Debian, and am tired to argue with sysadmins when they don't understand why do I ask Debian while there is Ubuntu (sysadmins nowadays, not sure they don't actually even know that there is Debian) -___- :D

CentOS, I don't know. I've mixed feelings with this one. First of all, I dont know it too much. Second, I always had problems with it. I think Debian is better (or maybe FreeBSD) for server purpose.

edit I also used to use SuSe. Actually, like 10 years ago, was not so bad, super easy, good hardware support, etc.. But super heavy and slow if you use desktop stuff. I felt this distro rely too much on Java UI things and it doesn't feel super native/natural. I think this is why Ubuntu won the fight (but after on, they came up and enforced the infamous Unity...)

 

Curious why Debian is in the first category and not the second one. My PC hardware is less than 8 years old and I still have to add the nonfree firmware to my Debian installs for graphics to work. To me that means it doesn't "just work".

 
 

I made very good experiences with Xubuntu (= Ubuntu using XFCE) and I use it since 14.10 (=2014) as my main desktop os for work and at home.

The XFCE desktop is clean, simple and configurable and integrates flawlessly with the Ubuntu environment.

I never had any dist-upgrade related issues and all my devtools run fine.

 

I would like to clear one thing.

Putting Fedora Rawhide among Arch or Tumbleweed makes little sense as the latest stable Fedora release would be a more likely choice. Both Arch and Tumbleweed are still officially stable whereas we never suggest that you actually download and run Rawhide.

Yes, you might need it for building future Fedora packages or testing compatibility, but actually running it is still risky (although I know a fellow Fedora developer who runs it on desktop). Fedora already moves based on 6-month cycles so it mostly has fresh software versions in it.

 

I used puppy Linux from usb to boot corrupted systems and backup data. Used Ubuntu previously on desktop and familiar with bash, then went with Linux mint on laptop with GTX1050Ti with dual boot. It drained battery too fast like 5 hours on windows but 2 hours on Linux. Powetop like tools gave 30 mins+ only. Now switched back to windows on laptop. Any suggestions regarding trying a new distro with battery life as priority but have good features/drivers.

 

The last time I give up to use Linux because it hard to install the usb network driver. In windows you just doing a single click only. But in Linux I dont know it is too hard. As you said Linux Mint is good like Windows. Perhaps I can try it ?? The Linux that I used last time is Parrot Linux.

 

Have you tried MX for new users?, I've heard good things. I've used a mix of Arch, Void and Gentoo for the past 10 years so, when asked for a Distro for new people is sometimes difficult. Do you have experiences with Steam and Lutris out of the box in various distros? sometimes some 32bit libs that Steam uses couse troubles.

 

I haven't tried MX but I'll add it to my queue of things. I'm not really a gamer so I haven't tried Steam though I might with my next machine.

 

This is a great read - thank you for writing it!

I'm trying to choose between Gentoo and Slackware, but I find it hard to compare them. Any advice?

 

Picking a distribution is tricky, it's often times down to a personal preference, like choosing what to eat or what car you drive.

First off, I love the article! My experience with Linux has been similar, I started ~1996 with Slackware on floppies, and my first CD distros were the ones I ordered online through cheapbytes. I was a Slackware user for years then recently (2012-2013) switched to ArchLinux. Like the author, I preferred to customize my software setup.

Now, for your question. Slackware to me, has always felt like traditional Unix, while Gentoo is much more progressive. This is just how it "feels" to me, if I had to select one for you, I'd look at other things you prefer to get a feel of which type of user you'd be.

 

I've used both, I like Gentoo better and is the one I've used for longer, I'm writting from Gentoo actually. Slackware uses older versions and has no official dependency manager wich to me is a dealbreaker nowdays, I don't want to deal with dependencies and personally don't care to take care of it, you can always get a non-official one but why tho. Gentoo has a bad rep as being very hard to install, but to me is just like Arch, compilations may take a while but you don't have to be watching the screen, you can do its thing while you sleep, and you can install it from any existing Linux so you can do it at your own pace and even between reboots, you just chroot and keep going, and after your first you just backup /etc and keep your /home separated and you are done, Gentoo install in a few minutes and let it compile before you go to bed in the monring it should be almost ready. Kernel config can be hard if you haven't done it but genkernel can make it automagically if you are not ready to do it manually (I recommend the automated way in your first install on new PC and then play with it manually), you can even use the automated one as starting point to start "cleaning". I thing the rep of Gentoo being hard is mainly to scare new people and for Gentoo users to feel powerful, is not that hard, just follow the excelent handbook. Aside the install, is rock solid. To me, the only reason to move away from Gentoo is that gets boring, in a good way, after 5+ years from your last install, almost no trouble (I say almost just in case, I can't recall any incident) you can get the hop itch, fool around with other distros but I always get back to the trusty Gentoo. Is also worth mentioning that big packages have binaries too, so if you don't think compiling Libreoffice is worthwhile (I don't) you can just install the binary. I certainly don't recommend Gentoo to everyone, you have to be kinda weird for it, but if you suspect you may be weird enough to say Arch is not enough control or lightweight enough; welcome! :)

 

As I said I used Gentoo for years. It usually took me a whole weekend to install.

But back then, the performance advantages were great, and I really wanted to dial it in.

These days, I don't find it worth my time to compile everything. Optimized or not, I don't notice a day to day difference that's worth that kind of time.

My move to Arch was based on the fact that I still wanted to hand pick everything that goes into my system and optimize it, without spending an entire weekend.

That being said it depends on how often you cycle machines. If you're planning on putting together a system that you'll use the next few years, that time spent might be worth it because a Gentoo system well done is really, really solid. I just ordered an i9 64gig workstation that I know I'll use the next 5-7 years and I'm considering putting Gentoo on that one.

As far as Slackware, I haven't really used it in so long I don't have much of an opinion on it. There were things I really liked about Slackware, but package management wasn't one of them.

 

Even a beginner should use Arch linux if they are into Computer Science. The manual installation system actually does a good favor to the user.

 

Don’t forget about Kali for pen/security testing.

 

Absolutely. I have used Kali pretty extensively, but no other distros, and I'm not really a pentest expert, so I didn't include that. But it is a pretty neat distro, even if it's only value is grouping in the tools you can use that you may have never heard of.

 

You could also mention Qubes OS in the I Want a Secure Desktop section and Manjaro which is really popular.

 

About cutting edge stuff: What is your view on Debian testing?

 

DeepIn is a mention as its shipping with huawei laptops after they ditched windows

 

Great suggestions. I'd add Void and QubeOS as pointed out in other comments, but also NixOS.

 
 

Surprised you didn't mention Manjaro (Arch with an easier install) or Pop!_OS (More responsible Ubuntu with better out of the box hardware support).

 

I started with debian (school stuff) and then I've discover ubuntu and pop os. Ubuntu it's pretty nice to use

 

The following would be a worthy mention too:

  • Elementary - For someone who like the aesthetic of Mac/Apple
  • Sabayon - For those who like gentoo (rolling distro), but don't like compiling packages
 

Great article, tnx! :)

I like Kali Linux, too. It's very good for Penetration Testing and installation and setup are pretty straight-forward :)

 

You didn't mention Deepin. What do you think of it ?

 

ParrotSec OS? :) But I'm now leaning towards looking at Pop