Is Linux Confusing? Here Are The Key Terms You Need To Know

Erez Zukerman 15-11-2012

key linux commandsAn operating system that doesn’t cost a dime, runs well on both old and new hardware, has a gorgeous user interface with modern effects, and offers a staggering variety of modern software – what’s not to like? And yet, making your first steps into the world of Linux can often feel like a daunting experience.


These days, Ubuntu and other modern Linux distributions The Best Linux Operating Distros The best Linux distros are hard to find. Unless you read our list of the best Linux operating systems for gaming, Raspberry Pi, and more. Read More usually install without a hitch (and without requiring any knowledge), but as you move forward using them, you will inevitably come across all sorts of terminology that isn’t always clearly explained. That’s why I’ve prepared a quick list of the most important Linux terms and definitions that you should know, each explained in the simplest possible way. They’re arranged in order of priority, rather than alphabetically: I’ve tried to put the most common or important terms first.

Note that these are terms, rather than commands you can run in Linux. If you’re after a round-up of the most useful commands, check out Joel’s post, titled An A-Z of Linux – 40 Essential Commands You Should Know An A-Z of Linux - 40 Essential Commands You Should Know Linux is the oft-ignored third wheel to Windows and Mac. Yes, over the past decade, the open source operating system has gained a lot of traction, but it’s still a far cry from being considered... Read More . Also, many of the terms are all-lowercase, because that’s how you will see them in the wild.

These Definitions Are Not Accurate

Writing this post was tricky, for the same reason a new user would have trouble getting into the field: The full, technical, accurate definition for each of these terms is complex. It’s not like providing a definition explaining what’s a “desk.” In fact, if you’re a Linux expert, I am sure you’ll have lots to say about how these definitions are fuzzy or inaccurate. Well, you’re completely right! The definitions below are not totally accurate, because to define each term fully and accurately, you would need a long Wikipedia page full of terminology that would boggle most beginners. So, these are accurate enough to give a confused newcomer a sense as to what’s what – and not more.

Essential Linux Terms and Definitions

key linux commands

Distro: Windows has multiple flavors (Home, Pro, and so forth). Well, a Linux distribution (or distro, for short) is a bit like taking this idea to its logical extreme. The very core of each distro is the same (meaning, there’s a powerful Linux engine underneath) – but the rest is very different. You could have one distro that’s only 100MB large and is designed to run off a thumb drive, while another distro could run 3GB large, include a ton of different software, and look completely different. Still, they’re both Linux. You can think of a “distro” as a specific version of Linux customized with its own software, options, and (often) visual look and feel. Above you can see a screenshot of our own Best Linux Distros The Best Linux Operating Distros The best Linux distros are hard to find. Unless you read our list of the best Linux operating systems for gaming, Raspberry Pi, and more. Read More page, giving you a sense of how much variety is out there.


X, X11 or X-windows: When you see someone using Linux, they’re not usually staring at a black DOS-like screen full of text. Rather, they’re using something that looks an awful lot like Windows, or maybe Mac OS X. There’s a wallpaper, and icons, and windows that can be dragged around, and even fancy visual effects such as transparency and animations. The system that provides the basis to all of this is called X, or the X Window System. It doesn’t do everything, but it’s handles the low-level heavy lifting for the graphical interface.

linux terms definitions

GNOME: If X-Windows is in charge of the low-level stuff, GNOME is what you see and interact with directly – and it’s beautiful. In Linux-speak, Gnome is called a “desktop environment.” It includes a large number of sub-projects, but when you’re using Gnome on the desktop, you don’t really think about it: It just works, all the different parts dovetailing together.

Unity: One of the most popular Linux distros is called Ubuntu, and if you’ve spent any time searching for Linux information online, you’ve almost certainly come across the name. Well, Unity is Ubuntu’s desktop environment. Even when you’re using Unity, you’re still using GNOME a little bit, because Unity is actually a “shell” for GNOME. If this sounds confusing, then just remember this: Unity is the name for Ubuntu’s graphical interface.


KDE: Last but certainly not least, KDE is yet another graphical environment used by the openSUSE Linux distributions and others.

root: If you’ve ever used Windows Vista, 7, or 8, you’ve no doubt noticed those annoying prompts that pop up whenever you try to do something “dangerous” like installing an application or modifying system files in any way. These prompts are shown because ordinarily, you do not have permission to do anything and everything to your own computer (such as delete the operating system or program files). To do these operations, you must be an Administrator – or, in Linux parlance, root. In other words, root in Linux and Administrator in Windows are roughly the same thing.

linux terms definitions

Bash: Windows has PowerShell and the regular command line interface, and Linux has Bash. Basically, it’s a “command processor.” So when you type in Linux commands like “ls” (for listing files) or “rm” (for deleting them), Bash is the program that accepts these commands and has to do something with them. There’s an important distinction to make here that doesn’t really exist in Windows: Bash is the processor, not the window into which you’re typing the commands. You could type Bash commands into a full-screen text terminal, like DOS; you could type them into a swanky semi-transparent window; you could even be typing them remotely into another computer. They’re still Bash commands.


terminal, console or shell: These are all different ways of referring to the visual interface you see when you work with Bash (or with another command processor). This is the window, or the screen full of text.

compile or build: Linux is the land of open source. In other words, many Linux application can be obtained in their “raw” form, just as their programmers wrote them – in other words, source code. The process of turning source code into executable files and other resources is called “compilation” or “building,” and is really something you shouldn’t be attempting if you’re just starting out with Linux. Thankfully, these days, you could be using Linux for years without having to compile or build anything yourself.

binary or binaries: In the strictest sense of the word, a binary file is a machine-readable file. In other words, the computer can understand it. But the day-to-day use of the term usually refers to files you can just run. In other words, when you see a page that offers either a “binary” or a “source code package”, the “binary” part means they’re offering compiled executable files. When you download software for Windows, you’re always downloading binaries.

key linux commands


apt-get and rpm: These are two different systems we’ll be bundling under one definition, because they do roughly the same thing: They let you quickly install software. In the world of Windows (at least up until the Windows 8 Store), you had to go online, find the page for the software you need, click the download button, wait, double-click the installer, and so forth. In Linux, things are much simpler, thanks to packaging systems like apt-get and rpm. These make it possible to just tell the computer what application you want, and the computer does the rest: Goes online, fetches the application (and any other software it needs to run properly), unzips it, sets it up, and so forth.  Above you can see a screenshot of the Ubuntu Software Center, the part of Ubuntu that lets you install new software without opening a single Web page, and uses apt-get to do the actual installation work.

kernel: Last but not least, the “kernel” of a computer system is the very core of its operating system. This isn’t something you’re going to hear a lot about in the world of desktop Linux, but if you’re into Android (which is a type of Linux, really), you’ll hear lots of speak about kernels. So, it’s just the very core of the operating system – the deepest guts of it, really (and is certainly not user-serviceable).

We Have a Manual For You, Too

If this post gave you a taste for Linux but you feel like you need a bit more help getting started, you should get and read our free manual, Newbie’s Getting Started Guide to Linux. It starts off with a short glossary as well, but is packed with other information you’re going to need as you make your first steps into the exciting world of Linux.

Other Major Concepts?

Linux is such a broad subject, it can be easy to miss an important concept or two in a glossary like this. Is there a key term I forgot? Was there a term that stumped you? Let me know in the comments!

Related topics: GNOME Shell, Linux Distro, Ubuntu.

Affiliate Disclosure: By buying the products we recommend, you help keep the site alive. Read more.

Whatsapp Pinterest

Leave a Reply

Your email address will not be published. Required fields are marked *

  1. Dann
    April 4, 2018 at 9:40 pm

    This really helped me on an assignment and broadened my knowledge on the linux operating system

  2. vdm
    December 8, 2012 at 9:54 am

    Did you know that even Windows has a kernel? :)
    Many people complained in the past that they had to do stuff with their kernels, regarding compiling modules etc.. then went back to Windows.
    But non of them did know that Windows has a kernel too. It's just that MS don't want us to be informed, so we can not complain at all ^^
    So today Linux also comes out of the box with an easy graphical installer which enables anyone to try Linux by himself.
    As I have been a Newbie 10 years ago I started to hate Linux because I killed my Windows partition the very first time.
    Today I'm using Windows as AD, DNS and DHCP, controlling my Windows clients, and Linux plays Web and Mail Server, Antispam etc.
    My work laptop is Linux only. Cannot live without anymore.

  3. Vishal Srivastava
    December 6, 2012 at 1:03 pm

    I've have just started using Kubuntu and BackTrack and I didn't know some of these terms. Thanks!! :) I've bookmarked it to refer to others later...

  4. Anonymous
    December 4, 2012 at 11:25 am

    Hope the new users could benefit from this!!

  5. Torsten Nielsen
    November 23, 2012 at 11:08 am

    Nice intro - often find myselft struggling to explain these terms to newbies.

  6. Ramnath
    November 23, 2012 at 7:59 am

    Thanks ! A welcome article - Hope this helps to remove the small doubt in the corner of your mind when U wanna give Linux a try

  7. Chan Lai Sun
    November 21, 2012 at 11:11 am

    Dear all at MakeUseOf,

    Many thanks for the great efforts in creating and maintaining this great website.

    Warmest Regards.

    Chan Lai Sun

  8. Efi Dreyshner
    November 20, 2012 at 8:55 pm

    Good for newbie :)
    I am using Linux already for five-six years, since I was 10 YO.
    Debian with KDE, and sometimes I am using XFCE or even CLI (:

  9. Freud Iomc
    November 20, 2012 at 5:21 pm

    Linux isn't hard if you can read.

    • dragonmouth
      January 29, 2013 at 8:24 pm

      Please do not confuse the Windows faithful with facts. They desperately want to believe that any O/S other than Windows requires the intelligence level of an Einstein to learn.

  10. Jim Spencer
    November 19, 2012 at 6:17 pm

    Nice article guys! As you say here, Linux can be a little tricky, and is not usually for the faint of heart! Linux is a wonderful operating system, but as I would recommend to any person anticipating using it, do not enter into it lightly, and for God's sake, do not rely on it as your primary operating system until you are well grounded and familiar about how it operates.

    • dragonmouth
      January 29, 2013 at 8:20 pm

      Anything you said about Linux can be said about Windows or O/S X. For first time users of Windows and/or O/S X, those operating systems can be as hard (or as easy) to learn as Linux. How quickly you learn an O/S depends on how quickly you are willing to let go of preconceived ideas about it. For example, the idea that to use Linux you must know Command Line. That may have been true 15-20 years ago. Today there are very few distros that REQUIRE the use of Command Line. The vast majority of distributions come with at least one GUI and any task that an average users wants or needs to perform can be done using GUI tools.

  11. twin
    November 17, 2012 at 2:32 pm

    I have used, and appreciated, various distros for years. I currently use Lubuntu. The problem for mainstream users will be a lack of drivers for peripherals such as Epson scanners and various printers. Many companies do not release driver information that can be used to create Linux drivers. You many have a wonderful OS running on your computer but no way to use your other equipment. I hope this situation improves.

  12. Zhong Jiang
    November 17, 2012 at 4:14 am

    My Linux adventure occurred years ago, while there are myriads of distributions variations users can select from. During a new installation of a system, some distro won't work well out of the box compared to others like Ubuntu. And base from what I've discern with Debian, hardware issues tend to spur hours of dedication of researching problems.

    As a precaution for the unsavory, you're living on a different system requiring another algorithm of rules and languages. You need to play their game.

  13. Terafall
    November 17, 2012 at 3:02 am

    Thank you for the article.I can use this to help my friend that are curious to Linux

  14. NotoriousZeus
    November 16, 2012 at 9:52 pm

    Although the glossary is short, as always an impressive work. Looking forward to more guides on Compilation if possible. Thanks.

  15. Anonymous
    November 16, 2012 at 9:35 pm

    Nice overview. Although I've been using Ubuntu for a few years I really don't get Unity at all and much prefer the Gnome Desktop where I can find things and don't have odd issues of not being able to get at "icons" that have fallen below the display so-to-speak.

  16. Anonymous
    November 16, 2012 at 4:36 pm

    I love the fact Linux give better freedom to set the OS the way you like it. Also Linux does not eat up memory like Windows. You get to keep more money in your pockets too.

  17. Austen Gause
    November 16, 2012 at 3:37 pm

    thanks for the info really helps

  18. Joel Lee
    November 16, 2012 at 3:32 pm

    That A-Z Linux post was not Danny's! I really enjoyed this article, though. Tons of good glossary stuff for Linux novices.

    • Erez Zukerman
      November 18, 2012 at 9:14 am

      Gyah! Sorry about that! Updated the post to reflect that it was of course yours -- oops!

      Glad you liked it otherwise. :)

  19. ha14
    November 16, 2012 at 10:16 am

    perhaps to mention Compiz fusion

  20. Mart Küng
    November 16, 2012 at 7:12 am

    Repository and ppa. Not the real beginners terms, specialy the last one but you'll need to understand them if you are going to install software that's not in the main repro. But good article.

  21. gpvprasad
    November 16, 2012 at 5:29 am

    please also update the Linux for Newbie

  22. gpvprasad
    November 16, 2012 at 5:26 am

    I think you missed lxdm/gdm/kdm too.

  23. Steve Reeves
    November 16, 2012 at 3:41 am

    The kernel _is_ the "core" or "powerful Linux engine underneath" each distro.

  24. Deekshith Allamaneni
    November 16, 2012 at 3:33 am

    Wow! this post will really help many Linux newbies.
    I am actually collecting (bookmarks) articles for Linux newbies. I am adding this to my list. Thank you.

  25. Anonymous
    November 16, 2012 at 2:51 am

    apt-get and dbpk: Do not use. Use the Synoptic application manager.

    Compile and build are not that difficult. The packages comes with a "make" file that has all dependencies well documented, and these should also run as they come.

    The Compilation is to binary "objects" that has the names of methods and procedures made by others visible, so you can link to existing libraries - load libraries and build an application. Here is the core idea: the code is exposed, so should you need to make calculations slightly different, or add a decimal, convert to inches or paint it: go ahead, well at your own risk. But all is done according to the specifications all computer science graduates know, so they can use their skills to correct errors, translate, improve or just customize for the company they work for.

    • Kent
      November 20, 2012 at 2:34 pm

      And with these posts you see exactly why so many folks start with a genuine interest in LINUX and end up throwing their hands up in the air. Just seems to me like the folks who really know LINUX are determined to show the world just how much they know and how little the rest know...a form of techno arrogance that shouts "I know it all and I'm going to tell it all to you at one time, whether you're listenting or not". Give it a rest...allow people to expand their interest and learn in a more gentle manner. You'll help expand the fan base tremendously if you will just stop trying to convince the rest of us just how smart you are :) (really, I promise you will :))

  26. Anonymous
    November 16, 2012 at 2:41 am

    Good review - just one error: KDE is "Korn Development Environment" - and not a graphical definition. Korn is command shell, as Bash (a Bourne Shell). Bear in mind that on Linux (as on Unix) shell commands and applications mix and can be executed after one another, branch out conditionally and repeated. The KDE is a Development environment implies that it was designed according to "Steelman" requirements to support the developer, and from the very early days when this was on Unix only, the development where to make the applications look better. But it also included special editors, debuggers and interface to utilities to "make" the applications. So this is the main reason for inconsistency: Pull in the full KDE - Kubuntu and see to that the applications you load are made for "KDE" - KOffice and not LibreOffice. Ubuntu states KDE compliancy, and if you run Ubuntu and Xubuntu - avoid installing the KDE applications. Mixing them can cause a problem.

    • Lisa Santika Onggrid
      November 16, 2012 at 1:34 pm

      Thank you. I thought it's a graphical interface like GNOME.

    • dragonmouth
      November 16, 2012 at 8:03 pm

      Please do not introduce confusion. KDE stands for "K Desktop Environment" and has absolutely nothing to do with the Korn Shell. There is no particular meaning attached to the "K". KDE is most definetely a graphical environment, just like GNOME, Unity, Mate, Cinnamon, XFCE or LXDE. KDE was and is being developed using Qt, not the Korn Shell.
      Ubuntu, prior to version 11.04, used GNOME graphical environment. Starting with 11.04, GNOME has been replaced with Unity.
      Kubuntu is a community-developed version of Ubuntu and has always used KDE graphical environment. In fact, the "K" in Kubuntu stands for KDE.
      Xubuntu is another community-developed version but using the XFCE desktop environment, hence the "X" in the name.
      Lubuntu, another community-developed version but using the LXDE desktop environment.
      There is no problems with installing and using KDE into any *buntu that does not already have it. All that happens is that you will install 750-900 meg of packages.

  27. Neil
    November 16, 2012 at 2:23 am

    Great review! This should help out some new users. I think in your desktop environment section you could've included a little bit about WMs "window managers" being alternatives to DEs, but other than that, it looks good.

    • Anonymous
      November 16, 2012 at 3:09 am

      That quickly makes the topic very more difficult. E.g. that X11 use tcp/ip and field input is through streams - the mouse is an object, so is the keyboard and so is the window and they all communicate. So enter a field with the keyboard and press "OK" with the mouse, will cause messages to be sent to the Window - by the Window Manager and this may change the order if the mouse has a higher priority than the keyboard. It also allows the application to be on one computer, and the screen on another and this can even be a special device.

      There is no "shared memory", this has to be configured, so that the keyboard driver cannot "see" the field and place directly into this like on MS Windows. The Desk Environment is just the "Main Window" as set up by the X11 Window manager - with a basic "toolbox". Some of this is needed by the DE, and the DE knows the "process Id" to the processes it has launched, but can only access the memory of its own threads, and not that of the launched processes. So a trojan process that tries to monitor what goes on, like sniff keystrokes has a much more difficult job - it has to intercept the actual keyboard driver and sniff everything, and cannot discover what is is username and what is password...

      • Lisa Santika Onggrid
        November 16, 2012 at 1:33 pm

        Exactly. You'll not going to feed those technical jargon to beginners.

      • dragonmouth
        November 16, 2012 at 7:30 pm

        Due to licensing issues, X11 has not been included in Linux distros for at least couple of years. It most probably will never be included again so there is no need to worry about it unless one is using an old version of a distro.

  28. Chris
    November 16, 2012 at 1:52 am

    I am still kind of new at linux and I am proud of myself for knowing every one of these terms, even if it was only a basic idea of some of the terms.

    • Lisa Santika Onggrid
      November 16, 2012 at 1:32 pm

      Same! I think I don't find getting my feet wet is that difficult.

  29. Keefe Kingston
    November 16, 2012 at 1:48 am

    I've been using Kubuntu for a while, and even I didn't know some of these terms. Thanks for the info! :)