The ps command on Linux systems is a default command line utility that can give us insight into the processes that are currently running. It can give us a lot of helpful information about these processes, including their PID (process ID), TTY, the user running a command or application, and more.

There are two columns in the output of the ps command that don't get talked about a lot. These are the VSZ (Virtual Memory Size) and RSS (Resident Set Size) columns. Both columns give us information about how much memory a process is using. In this guide, we'll go over their meanings and how to interpret the data they show us in the ps command on Linux.

In this tutorial you will learn:
  • How to interpret VSZ and RSS numbers in the ps command output

A Media Access Control (MAC) address is a unique number that gets assigned to every network interface, including Ethernet and wireless. It's used by many system programs and protocols in order to identify a network interface. One of the most common examples would be in the case of DHCP, where a router assigns an IP address to a network interface automatically. The router will know which device it has assigned an IP address to by referring to the MAC address.

Unlike an IP address, which is temporary and can be changed easily, MAC addresses are hardcoded into a network interface from the manufacturer. However, it's still possible to change or "spoof" a MAC address temporarily. On Linux systems, one of the easiest ways to do this is with the macchanger command line program. There are both legitimate and shady reasons for why a Linux user may find the need to change a MAC address.

In this guide, we'll show how to install the macchanger program on major Linux distros and then use the macchanger command to change the MAC address of a network interface either to a random value or some specific number. Follow the examples below to learn how.

In this tutorial you will learn:
  • How to install macchanger on major Linux distros
  • How to identify current MAC address and network interface
  • How to change an interface's MAC address
  • How to change interface to a specific MAC address

Working with the terminal using a command line interface is very fast and effective way of doing stuff on Linux systems. But have you tried working with the terminal, listening to some music via headphones and having a terminal warning or tab-completion beep / bell turned ON at the same time? Well, it can be very annoying. Listening to the PC Speaker beeps via headphones is very close to the feeling of hitting your head with a hammer. Even without headphones this beeping bell sound is very annoying.

In this guide, we'll show you several ways to turn off the terminal beep / bell noise in Linux, without just turning your system volume completely off. These instructions have been tested to work with a variety of major Linux distros.

In this tutorial you will learn:
  • Multiple methods to turn off the bell / beep terminal sound in terminal
  • Turn off beep / bell sound in vim text editor

When using PostgreSQL on Linux, there may be times that you wish to save the output of a query. Normally, the output appears on your screen. It's possible to redirect this output to a file instead, which would allow you to view it later. In this guide, we'll show you how to save the output of a PostgreSQL query to a file.

In this tutorial you will learn:
  • How to save the output of a PostgreSQL query to a file

As a Linux user, you're likely already familiar with using the mv command to rename a file on a Linux system. The task becomes a little more difficult when you need to rename multiple files at the same time on Linux.

One of the most common batch renaming jobs that are performed is to change all file names to lowercase letters. There are several different ways to do this on Linux. One way is with the native mv utility and a bit of Bash scripting, and the other methods involve the rename and mmv tools, which may or may not already be installed on your Linux distro by default.

In this guide, we'll go over various command line examples to rename all files from uppercase to lowercase letters on Linux. Some commands will work only for files, some for directories, and some commands work recursively. Take a look at all the different examples below to decide which command(s) to use that would best suit your needs.

In this tutorial you will learn:
  • How to rename all files from uppercase to lowercase using mv, rename, or mmv commands
  • How to install rename and mmv on major Linux distros

If you ever get tired of typing in your SSH password, we've got good news. It's possible to configure public key authentication on Linux systems, which allows you to connect to a server through SSH, without using a password.

The best part is, using key authentication is actually more secure than typing in a password each time. This is in addition to being far more convenient. It also allows you to automate certain tasks, such as rsync scripts or other Bash scripts that utilize SSH, SCP, etc.

The process for setting up key authentication involves generating RSA keys on one system, then copying the key to a remote host. This works on any Linux distribution and is a short and easy process. Follow along with the instructions below as we take you through the step by step guide to configure passwordless SSH on Linux.

In this tutorial you will learn:
  • Generate RSA keys and transfer to remote system
  • How to login with SSH without a password

A system administrator, in the vast majority of cases, has to take care of more than one server, so he often has to perform repetitive tasks on all of them. In these cases automation is a must. Ansible is an open source software owned by Red Hat; it is written in the Python programming lanaguage, and it is a provisioning and configuration management software which help us in the aforementioned cases. In this tutorial we will see how to install it and the basic concepts behind its usage.

In this tutorial you will learn:

  • How to install Ansible on the most used Linux distributions
  • How to configure Ansible
  • What is the Ansible inventory
  • What are the Ansible modules
  • How to run a module from the command line
  • How to create and run a playbook

When it comes to tidying up your hard drive on Linux, either to free up space or to become more organized, it's helpful to identify which directories are consuming the most storage space.

In this guide, we'll show you how to list all directories and sort them by their total size on Linux, through command line examples, a Bash script, and GUI methods.

In this tutorial you will learn:
  • How to list directories by size with du command examples
  • How to list directories by size with a Bash script
  • How to check directory sizes with Disk Usage Analyzer GUI utility

Ranger is a free and open source file manager written in Python. It is designed to work from the command line and its keybindings are inspired by the Vim text editor. The application has a lot of features and, working together with other utilities, can display previews for a vast range of files. In this tutorial we learn how to use it, and explore some of its functionality.

In this tutorial you will learn:

  • How to install Ranger on the most used Linux distributions
  • How to launch Ranger and copy its configuration files locally
  • Ranger basic movements and keybindings
  • How to visualize hidden files
  • How to get preview of various types of documents
  • How to create, access and remove bookmarks
  • How to select files and perform actions on them

After installing Docker on Fedora, AlmaLinux, Manjaro, or some other distro, it's time to install more containers. Once you have a Docker container up and running on a Linux system, one of the things you'll likely need to do is run commands inside the container. This allows you to use the container similarly to how you would a physical machine, except that Docker has done most of the setup legwork for us already.

There are already two commands available that allow us to run commands on a Docker container. The first one is docker exec, and the second command, which allows us to attach to a running container, is docker attach. These commands usually suffice, but you may find yourself in a scenario where you'd prefer to use SSH to connect to the Docker container and manage it.

Not all Docker containers are provisioned to run SSH. Normally, Docker containers are very lightweight and only programmed to do one thing. However, some Docker containers will allow SSH, and this can make management of the container much easier. In this guide, we'll see how to connect to a Docker container via SSH from the host system on Linux command line.

In this tutorial you will learn:
  • How to connect to a running Docker container via SSH

The BIND DNS software is one of the most reliable and proven ways to configure name resolution on a Linux system. Having been around since the 1980s, it remains the most popular Domain Name Server (DNS) currently in use. This article serves as a quick configuration manual of a Linux DNS server using BIND.

This article is not an introduction to DNS or an explanation of how the protocol works. Rather we will simply concentrate on a simple configuration of a custom zone and config file for a given domain / host supporting www and mail services. Follow along with the instructions below to get BIND DNS set up and configured on your own server.

Before you proceed with the installation and configuration of BIND nameserver, make sure that BIND DNS server is exactly what you want. Default setup and execution of BIND on Debian or Ubuntu may take around 200MB of RAM with no zones added to the config file. Unless you reduce the memory usage of a BIND via various BIND "options" config settings, be prepared to have some spare RAM available just for this service. This fact is even more important if you pay for your own VPS server.
In this tutorial you will learn:
  • How to install BIND on major Linux distros
  • How to create a DNS zone file
  • How to configure address to name mappings
  • How to check BIND zone file and configuration
  • How to start or restart the BIND DNS service
  • How to test a BIND configuration with dig command

The easiest way to share data between a Docker container and the host system is to use Docker's volumes. In this guide, we will go through the step by step instructions of sharing files between a Docker container and host system using Docker volumes via the command line on Linux.

Docker volumes work similarly to bind mounts, but are the preferred method for sharing data between a host system and Docker container because outside applications are not able to access the files and modify them.
In this tutorial you will learn:
  • How to use volumes to share data between a Docker container and host system

It's always a good idea to take frequent backups of your MySQL or MariaDB databases. They can potentially contain thousands of lines of irreplaceable data. Many users may be confused on how to back up their databases at first, as the process differs quite a bit from backing up ordinary files. The process of restoring a backup must also be known, as there's no point in having a backup if the user cannot reliably restore it.

In this guide, we'll go over various command line examples to back up and restore MySQL or MariaDB databases on a Linux system. You can then use these commands to make regular backups of your databases, or even add them to a Bash script that can do most of the work for you. Another option is to configure cron to make regularly scheduled backups of your databases.

In this tutorial you will learn:
  • How to back up MySQL or MariaDB database (one or multiple)
  • How to restore a MySQL or MariaDB database backup

The purpose of this guide is to go over the step by step instructions of how to back up a Docker container on the Linux command line. We'll also show how to restore a Docker container from backup. This can be done on any Linux system where Docker is installed, and will work on any Linux distribution.

To understand the Docker container backup and recovery process we first need to understand the difference between a Docker image and a Docker container. A Docker image contains an operating system with possibly one or more preconfigured applications, whereas a Docker container is a running instance created from an image.

In this tutorial you will learn:
  • How to back up a Docker container on Linux
  • How to restore a Docker container on Linux

The purpose of this guide is to show some of the most common iptables commands for Linux systems. iptables is the firewall built into all Linux distributions. Even distros like Ubuntu, which utilizes ufw (uncomplicated firewall), and Red Hat, which utilizes firewalld still pass their commands to iptables and use it in the background.

Mastering iptables, or at least becoming familiar with some of the most basic commands, is essential for Linux administrators. Even casual Linux users can benefit from understanding the basics of the iptables firewall, since they may be required to apply some minor configurations to it at some point. Use some of the examples below to familiarize yourself with the iptables syntax and get an idea for how it works to protect your system.

You should not apply iptables rules to a production system until you are somewhat familiar with how they work. Also be careful when applying rules to remote systems (a computer that you have established an SSH session with) because you can accidentally lock yourself out if you enter the wrong rule.
In this tutorial you will learn:
  • Collection of basic Linux firewall iptables rules
Viewing the iptables rules configured on our Linux system
Viewing the iptables rules configured on our Linux system

Submit your RESUME, create a JOB ALERT.
Subscribe to NEWSLETTER and receive latest news, jobs, career advice and tutorials.
Get extra help by visiting our LINUX FORUM or simply use comments below.

You may also be interested in: