I get so, so tired of explaining that Linux isn’t that hard. Indeed, if you’re reading this on an Android phone or on a Chromebook, congratulations! You’re using Linux, and you very well might not have known it. But then there are the Linux distributions that do require expertise to make the most of.
Why would you want to go to the trouble? Because you’re a programmer, an engineer, or a system administrator who wants to get the most from Linux. Or, you’re a power user, and you want to push your computer as far as you can take it. If that’s you, then these are the distributions for you.
You knew Fedora, Red Hat‘s community Linux distribution, would be first on my list. It’s the mainstream distro that pushes Linux’s limits. It comes powered by the newest Linux kernel and with the latest open-source software.
In particular, Fedora is the Linux of choice for programmers. No less a figure than Linus Torvalds uses Fedora for his development work. Need I say more?
Sometimes, however, when you’re running a leading-edge distro, you can cut yourself. There’s a reason why Fedora’s also known as a bleeding-edge Linux.
On the other hand, Fedora is easy to install and set up. You don’t need to be a Linux expert to get up and running with it.
For programmers, Fedora also boasts an excellent Developer Portal. It features dedicated guides on developing command line, desktop, mobile, and web apps.
The Fedora Developer Portal also comes with an excellent guide for developing hardware devices such as Arduino and Raspberry Pi. Last but not least, it comes with such development tools as the top-notch integrated development environment (IDE) Eclipse for Java, C/C++, and PHP and Vagrant, a tool for creating reproducible, portable container or virtual machine (VM)-based development environments.
Unless you’re working on the Debian/Ubuntu family programs, Fedora should be your first choice for a development operating system. For developers in that group, I recommend the newest version of Ubuntu.
Do you want to set up a Linux desktop to work and look exactly the way you want it to? If that’s you, then Arch Linux deserves your attention. With Arch, everything is under your control. That’s both the good news and the bad news.
While Arch’s slogan is “Keep it simple,” simple is in the eye of the user. As someone whose first “desktop” was the Bourne shell, it’s not that hard. But, for those who didn’t grow up with a command-line, it’s another matter.
You see, Arch only comes with a command shell. It’s entirely up to you which desktop environment you’ll use and exactly how it will be customized. With sweat and toil, you can get it to fit your exact requirements and needs. That’s not easy. Even with the help of its excellent ArchWiki documentation site, you’re in for a lot of work. But, when you are done, you’ll have a unique desktop to call your own.
Or, if that sounds like too much work, you can use Manjaro Linux. This distro takes much of the blood, sweat, and tears out of installing and running Arch. It comes in three main desktop editions: GNOME, KDE Plasma, and XFCE.
At the same time, though, if you want to switch Linux kernels, Manjaro is one of the few distros that makes it easy to switch operating system gears. It supports multiple kernels simultaneously. You just re-boot your system, make your selection in the boot menu, and you’re back to your desktop with a new kernel running underneath.
Is this something most people will want to do? No. But, if you’re serious about testing the Linux kernel, then Manjaro is for you.
Do you really, really want to get deep in the weeds with Linux? If so, then the source-code-based distro Gentoo is for you. For starters, there is no installation program for Gentoo. As its developers say, ” You’re the installer.” That means, “you can apply all the customizations you desire” — once that is, you’ve absorbed the Gentoo Handbook. Unless you’re an expert Gentoo user, I urge you to keep a copy of the Handbook up and running on another computer. You’re going to need all the help you can get to get Gentoo up and running.
Once you do, you’ll also need to learn the ins and outs of the Portage package system. Unlike almost all other Linux distributions, which use binary software packaging systems such as Red Hat’s RPM and Debian’s APT, Portage is source-code based. So, for example, if you want to install a program in Portage, you actually compile the application’s source code on your machine. You can also “edit” the source by using USE flags customizations.
Easy to do? Heck no! But if you want absolute control over what’s on your desktop, Gentoo is for you.
But, say you want a lot of power but not quite so much work? Then, just like Arch and Manjaro, you can use Sabayon Linux with Gentoo. This distro’s developers’ goal is to deliver the best “‘out of the box user’ experience by providing the latest open-source technologies in an elegant format. In Sabayon everything should just work. We offer a bleeding edge operating system that is both stable and reliable.”
Essentially, Sabayon makes most of the Gentoo setup decisions for you. You still get a lot of control, but you don’t have to turn every knob and flip every switch to get a working system.
Looking ahead, Sabayon is rebranding as MocaccinoOS. The main difference between this and Gentoo is it uses the new container-based packaging system, Luet. This is still in beta, and I can only recommend this version for experienced developers and users.
And, now for something different. Kali Linux is a Linux distribution designed for penetration testing or — yes — hacking. Thanks to Mr. Robot, Kali Linux is the best known of the hacking distributions.
Kali Linux is the work of developers at the security firm Offensive Security. It’s built on Debian. Historically, it goes back to the Knoppix-based digital forensics and penetration testing distro BackTrack.
While installing and setting up Kali is as easy as setting up any Debian distribution, its default software packages are where things take a different course. For example, instead of LibreOffice for your default office suite or Thunderbird for your e-mail client, neither one is provided by default. Instead, it comes with such security programs as OWASP ZAP, for beating on websites for security problems; SQLMAP, which automates detecting and exploiting SQL injection vulnerabilities; and THC Hydra, a popular password cracker.
Now Kali Linux can’t turn you into a hacker or a security maven. To do that, you really must know what’s what with computers, coding, and security. It just provides you with the tools and expert needs to get started.
If you just want to pretend to be a hacker, start at Hacker Typer. Enjoy!
The flip side of breaking into systems, or checking to see if they can be broken into, is repairing already busted systems. The best of these repair Linux distros is SystemRescue. This operating system, also known as SystemRescueCD, which gives you an idea of how old it is, is designed to repair busted computers.
This is the distribution I, and other Linux experts, need to help our Windows cousins when they run into failed Windows installations and corrupted hard drives. It is not meant as a permanent operating system. Instead, you boot it from a USB drive, DVD drive, or, yes, even now, a CD drive. Once up, you can use it to explore a semi-dead computer and attempt to bring it back to life.
It’s not simple to use. Like Kali, it gives you the tools you need to get the job done. In this case, it comes with programs such as GNU Parted, for manipulating disk partitions and filesystems; ddrescue, which is a data recovery tool that works by copying data at the block level from corrupted storage devices; and rsync, a program for cloning data from a failing drive across your local network to another, stable computer.
None of these tools are easy. I cannot recommend enough that you read the SystemRescue manual before trying to rescue a failing system. That said, once you know what you’re doing, you can expect to hear from friends and families anytime their Windows PCs go seriously wonky.
What are the best books on Linux?
Nothing beats working with Linux, but there are books that can help you master it.
The best way to learn Linux is to use it. And to use the “man” command, as in RTFM.
That said, there are also some helpful books out there to take you from someone who knows a thing or two about Linux to a real pro. I’ve one word of warning: Be sure to get the most recent edition of any of these books. A book that brings you up to speed on how init gets a Linux instance running won’t do you any good since it’s largely been replaced by systemd.
Here are some of my favorites:
- How Linux Works, 3rd Edition: What Every Superuser Should Know 3rd Edition. This book by Brian Ward covers the historic basics and their modern equivalents. So, for example, besides just covering Linux disk partitions, it also covers Logical Volume Manager (LVM).
- The Linux Command Line: A Complete Introduction 1st Edition by William Shotts delivers just what it promises. After you absorb this, you’ll know now only how to make your way around the Bash shell, the most popular Linux shell, but the fundamentals of how to use such powerful shell programs as sed, grep, and awk. There was a time I made a living from having mastered that last trio.
- Linux Command Line and Shell Scripting Bible 4th Edition by Richard Blum and Christine Bresnahan. Mastered everything in Shotts’ book? OK then, you’re ready to move on to this massive tome. This new edition, published in early 2021, walks you through the basics and moves from there to more advanced topics. It does this with easy-to-follow tutorials and examples.
- Linux Cookbook: Essential Skills for Linux Users and System & Network Administrators 2nd Edition by Carla Schroder. Carla knows her Linux. She’s been at it for almost as long as I have. This new update to her earlier classic delivers the goods. Essentially its recipes are mini-how-tos for some of the most common situations you’re likely to run into if you’re a Linux power user or system administrator. Written in an amusing style, I highly recommend this book.
What are the essential Linux websites?
If you really want to know Linux, you want to read everything I’ve ever written… Well, maybe not. Seriously, here are the sites you must keep bookmarked if you’re a real Linux pro.
To really know what’s going on with the Linux kernel, you must keep an eye on the Linux Kernel Mailing List (LKML). Note I don’t say read it. I’m not sure anyone can actually read everything posted to the list. Its message volume is insane. But, as you gain experience with it, you’ll be able to separate the wheat from the chaff. For instance, it’s a safe bet that anything Linus Torvalds posts are worth at least a glance.
I recommend getting a handle on the LKML by reading its FAQ. It will make understanding what’s going on much easier.
If that’s too much for you — like, I don’t know if you have a life or something — you can subscribe to the LWN.net. There are many Linux news sites, but there’s only one LWN. Run by Linux kernel maintainer Jon Corbet, LWN goes deep into the ins and outs of Linux kernel, open-source software, and coding. For example, I can tell you about the latest Fedora release; LWN will tell you about the Fedora community debate over whether non-free Git forges should be used in developing the distribution.
Let’s say, though, that you just want to keep up on general Linux news and not the hardcore tech and programming information. If that’s you, the aggregate site, Linux Today, does a good job of gathering up Linux news stories, features, and the latest tutorials. Here, I’ll add, you’ll also find links to many of my stories.
Do you want to know exactly how your new processor might work with Linux? Then Phoronix is for you. This site covers kernel news, but it’s most well known for its detailed reporting and benchmarking on the latest Linux distros and hardware. So, if you want to know the current state of Linux support for Intel’s Software Guard Extensions (SGX) or how Linux and Mesa Drivers compare on Intel Core i5 12600K/UHD Graphics 770, with each other in raw performance, this is the site for you.
Finally, for those of you who like to know about every Linux distribution out there, your site of choice is DistroWatch. It tracks every — and I mean every — Linux distribution out there. By my count, there are about 600 distros out there these days, and most of them are still being actively developed. This is the place to go to keep track of them all.
I’ve been running Linux for 29 years. Linux is 30 years old. I know this operating system every which way you can. Before that, I’d cut my teeth on Version 7 Unix. In other words, I have a clue about Linux. The opinions I give here are based on all that experience and the experience of the many Linux kernel developers and distribution programmers I’ve known over the years. That said, if there’ are any mistakes, they’re all mine.