Skip to content Skip to sidebar Skip to footer

Important commands on Linux that you should know


important linux terms
When you learn to use Linux, you will find many foreign terms that are often used in the Linux world.

Inevitably you have to understand the term Linux to facilitate you when reading articles while learning Linux.

I will write down many popular Linux terms that you must know because they are very often used.

Linux vs Windows applications

Because Linux is open-source, it is not only one team that develops Linux, but everyone can contribute to developing Linux, to meet certain needs, usually, the community will create modules/packages/libraries that are named as they want their creators, now this name will sound strange to users new Linux.

Most console / Command Line Interface (CLI) based applications are not surprised if the name of the application running on the CLI is considered Linux command.


For example, the task manager application with CLI on Linux is named top or htop, so to run the application via the terminal we must type the name of the program which is $ top or $ htop.

In Linux for task manager applications, there are more than 1, it's just that there must be a famous application, so we usually use well-known applications.

For similar applications, for example, the task manager can have a different name for the GUI version, because the application is made by different people/teams.

Linux is like Building Block


If you use Windows, by default Windows has bundled GUIs and utilities to manage the system and we don't need to change these utilities, for example, task manager, registry editor, network manager, etc.

There are indeed applications made by third parties outside there that function the same but we don't need to install it because the default application cannot be removed because it becomes a single unit of Windows itself.

Unlike LINUX where we can choose packages to build the system that we have, we can change the Desktop Environment, change utility tools, change the kernel, change the file manager, replace, task manager, etc.

Because Linux was created from various existing communities so Linux is like a building block, where we are free to choose the block/package that we will use to build the system.

Although at first Linux was a headache because it had to deal with a lot of terms but if you read this article guaranteed to lead you to learn Linux more easily.

Linux doesn't restrict us from being creative, that's the power of opensource.

Opensource

Linux is an Open Source Operating system where source code (code written by programmers to build applications) is published freely for the community.

The community is also given the freedom to modify, develop, and redistribute. This freedom makes open source applications quickly evolve to adjust to the times.

Because in an open-source community, anyone can contribute to the development of this open-source application.

GNU

GNU is an abbreviation of GNU's, not UNIX.

GNU has the understanding of applications that are compatible with UNIX developed by the Free Software Foundation (FSF).

The purpose of GNU is to make all open-source applications dedicated to the benefit of humanity.

Kernel

The kernel is the main module in the operating system (OS) which is the most important part of the operating system.

The kernel is loaded the first time the operating system boots and will remain in memory until the system shuts down.


Therefore the kernel is placed in a protected area in memory (RAM) to avoid being overwritten by other application memory.

The kernel is designed as small as possible in order to save resources (because the kernel is loaded in memory permanently once the computer is turned on).

Basically, the kernel is responsible for managing memory management, process and task management, and disk management, the kernel is also as a liaison between hardware and applications in the system.

The kernel is usually used by UNIX based operating systems such as Linux, FreeBSD, Android, etc.

Boot Loader

The boot loader is a command code whose job is to handle the boot process to the operating system (OS) before the operating system is loaded/called.

This boot loader is called after the POST firmware (BIOS / UEFI) (Power On Self Test) process is complete during the boot process.



For example, Linux uses GRUB / LILO and windows to use the windows boot manager.

This boot loader appears/appears when you install more than 1 operating system on your computer (Multiboot).

UEFI and BIOS

Both UEFI and BIOS are a computer firmware that functions the same way to initialize when the computer is turned on.

When you press the power button and before the OS runs, the BIOS / UEFI is tasked with initializing (checking) the hardware installed on the computer.

The OS will run when all hardware installed is properly initialized.

Unified Extensible Firmware Interface (UEFI) is a new generation of Basic Input Output System (BIOS).

UEFI and BIOS have different ways of initializing hardware, so it has an effect on the performance of the OS you are using.

UEFI was created to remove restrictions when using the BIOS and provide developer support to develop systems with large capacity and fast computing.

Using UEFI is highly recommended because UEFI is the new standard in the computer world today.
- "BIOS can only read discs with a maximum capacity of 2TB" -

GPT and MBR

The Master Boot Record (MBR) and GUID Partition Table (GPT) are partition tables/partition systems whose job is to store partition information on the storage drive (HDD and SSD).

such as where the initial and final partitions are, which partitions are bootable, the location of the operating system, the number, and volume of the partition. That is why when you want to install your computer you are asked to select the GPT or MBR to be used as the partition table.

MBR is used by the old version of the operating system and GPT exists as a replacement or new version of the MBR that is used on modern computers today. MBR and GPT have different ways of storing partition information in storage.

Disadvantages of MBR

Called the master boot record because the MBR is a special boot sector at the beginning of a drive, this sector contains the boot loader of an installed operating system and other information about existing partitions.

MBR can only read hard disks with a maximum capacity of 2TB, only supports a maximum of 4 primary partitions, if you want to create more than 4 partitions, you must create extended partitions and create logical partitions.


Advantages of GPT

GPT is the standard for GUID partition tables, this is a new standard that was born with UEFI.

Called GPT (GUID Partition Table) because each partition on the drive is represented by a "globally unique identifier" or GUID - which is a long random text as the identity of each partition.

GPT has no limit like MBR, the limit will only exist in the operating system.

So you can install drives with large capacities above 2TB and can create as many partitions as you want until the operating system limits them.

When MBR stores information in one place, GPT stores data spread on each partition on a drive so that it will facilitate the recovery process when there is a corrupt partition table that causes the operating system cannot boot.


Windows can only use GPT if it is in UEFI mode, not legacy BIOS.

All Windows 64bit variants can use UEFI and GPT starting from Windows Vista, 7, 8, 8.1, and Windows 10. Windows can also read GPT in legacy BIOS mode but cannot boot using GPT if it is in legacy BIOS mode.

Terminal

The terminal in Linux is an interface that allows users to interact with computer systems using the Command Line Interface (CLI).

If you want to type Linux commands, then this is where you can use Linux by typing Linux commands.

Each Desktop environment has its own terminal application for example for the XFCE Desktop environment to interact with the terminal we can use the xfce4-terminal application.

Terminal Emulator

A terminal emulator is an application that provides a text-based interface (CLI) to access the shell.

To make it easier to access the Linux shell (Shell CLI) from the GUI, a terminal emulator is created, with the terminal emulator you can access the console shell from the GUI shell you are currently using, so it's easier.

Linux Shell

A shell is an interface used by users to interact with the operating system, generally a shell in the form of a Command-Line Interface (CLI) or a Graphical User Interface (GUI).

The type of shell that you use on your windows every day is GUI shell because with GUI shell everyone can use it easily.

While the intended shell on Linux is a Shell in the Command-Line Interface (CLI) version, not a GUI, even though Linux already has a desktop/graphic but the desktop version of the GUI is not the shell in question, because if you want to use 100% of the potential of Linux you have to access it via CLI

When using the Linux command you will access the CLI shell and are required to type the command/text as the only way to interact with your Linux through the shell.

TTY

Once upon a time the terminal connected to the computer, to control the computer using electromechanical teleprinters or teletypewriters (TeleTYpewriter, TTY).

Since that time the name TTY was used to name the console interface on the basis of the command-line interface (CLI).

Linux generally has 6 virtual consoles (TTY), you can access them using the key combination Ctrl + Alt + F1 to F6, while Ctrl + Alt + F7 is used to hide the console terminal (TTY) and return to X windows display.

Root /

Root in Linux can mean the parent partition of the Linux file system which is represented by the backslash symbol (slash) / or it can be the highest permissions for users on a Linux system (such as administrators in windows).


Users with the highest privilege/access rights (Root) will usually be given a hash symbol when on the console terminal, while normal users will be marked with a dollar sign $

Mounting

Unix systems have a directory tree with the root parent represented by a slash /, so to be able to access files from storage we must enter / mapping / mounting the storage to the directory tree so that the files in the storage can be accessed.

Examples of Mounting cases

still confused? like this ... in the windows, the main file is the drive itself which is represented by a drive letter, for example, C: D: E: and so on

While Linux only has 1 parent directory tree, i.e. root, which is usually represented by a slash /, so for example, you insert flash disk, your flash disk must be loaded/mounted to the existing directory tree structure.

Usually, we first create a special subdirectory to mount the flash disk so it's easy, for example, we first create the directory/home/flash disk.

In windows all hardware installed will appear in the device manager, while in Linux all installed devices will appear in directory/dev or / media.

If you open the contents of the directory, all hardware installed on your computer will appear (the same as Windows device manager, right, it's just text-based) your flash disk will be detected as sda1, sda2, sda3, etc. depending on how many removable disks are installed.

You cannot open the contents of your flash disk by opening the file in the directory/dev or / media, because what appears there is only a file block, not a directory so you need to first mount it in order to see the contents of your flash disk.

Mount and Unmount commands

The command to mount is $ sudo mount /dev/sda1 /home/flash disk after mounting it to the / home/flash disk directory so you can see the contents of your flash disk in that directory.

To release it please use the command $ umount /dev/sda1

Nowadays the mounting process usually runs automatically when the flash drive is plugged in.

But if you want to learn Linux you must understand this concept because of mounting very often used when we make improvements/customization systems that can only be done using a terminal console.

X windows /X11 System

X windows or X11 or can also be called X is a client-server based application on a UNIX-based operating system whose job is to create a GUI environment.

In the X server system, it runs on the local computer/computer itself but can serve X client locally or over the network transparently for example when the computer is remote desktop.


X windows system consists of various components that work together to form the appearance of the GUI, these components among them:
  • X server. X server is an application on Linux whose job is to control display and hardware input. The X server also receives and processes information from the x client with the help of Windows manager
  • Windows manager. Windows manager is an X client that handles tasks in general to manage the appearance of the GUI including adjusting the screen, mapping coordinates for the screen, mapping the GUI interface to be placed on the screen, etc.
  • X client. X client is all GUI applications that communicate with the X server using the X protocol. so all GUI based applications such as browsers, office applications, video editing applications, etc. are X clients.
Each Desktop environment usually has its own composition, both the Widget toolkit, the Windows manager and the display manager. You can check it in the Archlinux wiki overview of the desktop environment.

Desktop Environment (DE)

The desktop environment (DE) is a graphical user interface (GUI) that allows users to access and manage important features and services on the operating system without using the command line interface.

The desktop environment is the default interface by modern operating systems today (such as Windows, Linux, and macOS) which replaces the Command Line Interface (CLI) used by earlier operating systems such as DOS and UNIX.

Although the desktop environment is the mainstay of our time, users can still access the command-line interface to manage services that cannot be accessed using the desktop environment.

There are many Linux desktop environments out there, including the popular ones are Cinnamon, KDE, XFCE, GNOME, MATE, Unity etc.

The main Desktop Environment (DE) is also called Desktop only.

Display Manager (DM)

The display manager can also be called Login manager because basically, it is the User interface that is displayed when the boot process ends.

The display manager can be classified into 2 Console Display managers (such as CDM, TDM Console, Nodm) and Graphical Display Manager (such as GDM, KDM, Entrace, LightDM, XDM, etc.)

Widget Toolkit /GUI Toolkit

As we know, Linux is based on text/console / Command Line Interface (CLI) when the developer wants to create a Graphical User Interface (GUI), then we need a library and engine to build it.

For this reason, a widget toolkit / GUI toolkit was created to realize this dream which makes Linux more colorful and user friendly.

widget toolkit, widget library, GUI toolkit, or UX library is a library or collection of libraries in which there is a set of Graphical Control elements (or often called widgets) that are used to build the graphic user interface (GUI) of an application or program.

Most Widget toolkits have their own rendering engine, this engine depends on the operating system or windowing system used (Linux uses X windows or X11).
Widget toolkit frequently used are GTK, GTK + and Qt

Packages

Packages in Linux can be called applications as well as in the Windows operating system, packages here are usually applications that can be directly executed, source code, or just in the form of libraries/dependencies to support other applications.

Dependencies

Dependencies in Linux can also be called Dynamic link library (DLL) on a windows system.

However, the term DLL is not suitable for Linux, because package dependencies on Linux are interpreted as other packages that are needed by certain packages (which you will usually install) so that the package/application can run.

It is very natural in Linux if an application/package requires another package as a module to run.

Package manager

Package manager or Package management system in Linux is a series of applications that work together so that the process of installing, updating, upgrading, and uninstalling applications can run automatically.

The package manager will manage the packages to be installed or that are on our computer, in each package there is a series of information that will be used by the package manager to organize the package so that it runs well.

The information includes package name, package version, package dependencies, vendor, checksum, etc.

The package manager is made to eliminate the way to install and update manually, where installing manually can cause conflick dependencies (Dependencies HELL) or even conflick applications that cause the system to be unstable.

Some popular package managers include:

  • Yellowdog Updater, Modified (yum)
    yum is used for Linux enterprise with RPM package managers such as the RHEL distribution
  • Pacman (package manager)
    Pacman is used by the Arch Linux distribution
  • APT (Advanced Package Tool)
    APT is a set of tools used to manage Debian packages, APT is usually used by Debian-based Linux like ubuntu.
  • Dpkg ( Debian GNU / Linux Package Manager )
    Is a package manager for Debian-based distros and is a medium package manager, a higher version of dpkg is APT
The package manager above is still console-based, but now it has been made for the GUI version. The GUI for APT is Synaptic while the GUI version for Pacman is pamac-manager.

Repositories /Repository

A repository is a server that contains various packages that will later be used by the package manager as the source and basis for installing updates and upgrading packages installed on your computer.

In Windows, there is no such thing as a repository because only one person or one group develops.

But in the opensource community where everyone can take part in developing applications, it is necessary to have a repository server as a place to put the application if there is an update.

The repository also functions to facilitate the search for applications that exist in the opensource community, you can imagine if they are not put together in one container, we will be very difficult to find the application we want because applications with one purpose can have many names and variants.

With the repository, the community will be easier to find and report bugs that exist to repair and develop the application.

Repositories are as easy as the Google Play Store (because technically it is a repository), where we upload our applications and download all the applications that are needed by our Linux.

Usually, the Linux Repository has several levels and categories in general including:

Main repository / Distro

This repository is usually divided into several subs depending on the distro, but basically the same wherein the main repository or repositories of the distribution of all applications/packages that are supported directly by the team of the distro.

Community / User Repository

The user repository is a repository where the application is made by the community of the distribution where the internal team of the distribution does not participate in the development, application updates, and application security, so the user is required to be able to install applications in the user repository wisely.

Each distro has a name for the User repository, for example, the Ubuntu repository user repository is given the name PPA (Personal Package Archive) while for Arch Linux it is given the name AUR (Arch User Repository).

Linux Distribution (Distro Linux)

Because open-source Linux where everyone is free to modify, develop, build and redistribute the results of his work, each group/community has its own goals/objectives in modifying, developing, and rebuilding Linux.

Now the community that develops Linux with this specific goal is called the Linux distribution (Distro).

There are hundreds or even thousands of distributions in the world, both of which exist on the internet or are only used by companies or groups on a small scale, such as Linux distributions for Wireless modules, cars, CCTV, industrial machines, servers and so on.

LTS (Long Term Support)

Is a version of the application/package Linux (kernel, OS, application) stable version, where the LTS package provides support for a long time (for example 6 months) and during that time the application will be fully supported and compatible with new applications without us having to update it.

The LTS version (either OS or package) is perfect for offices where the admin doesn't need to update too often and only needs to update if the LTS version is updated.

congratulations you have completed a chapter one in Linux material for beginners please continue to the next chapter.

previous material Next material
Aliif Arief
Aliif Arief web and app enthusiast

1 comment for "Important commands on Linux that you should know "

Subcribe