Learn how to split a physical monitor display into virtual screens with the xrandr tool.
Also find me here:
Baeldung Author
baeldung
This is the standard author on the site. Most articles are published by individual authors, with their own profiles, but when multiple people have a strong contribution, we publish collectively here.
Here's what I've written (so far):
Baeldung on Linux
- All
- Administration (258)
- Scripting (156)
- Files (131)
- Networking (98)
- Processes (96)
- Filesystems (42)
- Security (39)
- Installation (38)
- File Editing (38)
- Web (21)
- File Searching (21)
- File Viewing (19)
- Search (10)
- File Compression (9)
- File Permissions (7)
- Series (5)
- Building (1)
Reattach to an Already Running Process
Filed under Processes
Learn how to reattach to an already running process in Linux.
Why Are There Multiple Shell Prompts?
Filed under Administration, Scripting
Learn about different shell prompts and the variables that control them.
Examples of the Modulo Operator in Bash
Filed under Scripting
Learn how to use the modulo operator in Bash scripting to perform arithmetic operations and assignments.
Viewing Long Commands in ps Output
Filed under Administration, Processes
Learn how to expand the view of process command lines when using the ps command or the /proc pseudo-filesystem.
IRC Clients for the Linux CLI
Filed under Administration
Learn the features and ways to use several popular IRC clients for the Linux command line.
Creating a Wireless Access Point and Sharing Internet Using nmcli
Filed under Networking
Learn how to create a wireless access point using the nmcli command.
How to Resize VirtualBox Virtual Hard Disk
Filed under Administration
A quick and practical guide to resizing the virtual hard disk in VirtualBox.
Get Parent Processes and Subprocesses with pstree
Filed under Processes
Explore the use of pstree to get an insight into parent and child processes.
Access a Page That Requires Login From Another Page Using curl
Filed under Networking
Explore how to use curl to access a page that requires login from another page.
Difference Between ls, ls *, ls **, and ls ***
Filed under Administration, Files
Learn about the ls commands and its many uses when combined with shell globbing.
Wrap Quotes Around Each Line in a File or Variable
Filed under Scripting
Learn ways to automatically quote lines of text in files or variables.
Exclude “Permission denied” Messages in find Command Output
Filed under File Searching
A quick and practical guide to excluding “Permission Denied” messages from the find command’s output.
The Meaning of the Symbols !, !! and * in /etc/shadow
Filed under Administration
Explore the meaning of !, !!, and *, that may appear in the password field of the /etc/shadow file on a Linux system.
Increasing Screen Size/Resolution on a VirtualBox Instance
Filed under Administration
A quick and practical guide to increasing screen size and resolution on a VirtualBox instance.
Redirecting a Domain To Another Domain Locally
Filed under Networking, Web
Learn ways to direct several domains to the same IP address as well as redirect one domain to another in Linux.
Compression of Multiple Files Individually With gzip
Filed under File Compression
Learn how to use the gzip and gunzip utilities to compress and uncompress files and folders from the command line in Linux. Explore compressing individual files and multiple files in subdirectories using wildcard expansion. Further, discover alternatives to gzip, such as Zip and 7-Zip, and learn about their advantages and differences.
How to Create and Use VirtualBox Snapshots
Filed under Administration
Learn how to use the Snapshots feature of VirtualBox and how it works.
How to Echo the Variable Name Instead of Variable Value
Filed under Scripting
Learn different ways to output the name of a variable instead of its value in Bash.
How to Burn a CD or DVD ISO in the Linux Terminal
Filed under Administration, Filesystems
Learn how to burn CD and DVD optical disks via the command line.
Enable the MySQLi Extension on Linux
Filed under Administration, Installation
Explore the MySQLi extension on a Linux system and learn how to enable it.
WinSCP Equivalent in Linux
Filed under Networking, Security
Learn many ways to get the behavior and convenience of WinSCP under Linux.
Getting Started With KVM Linux
Filed under Administration
Learn about using KVM on Linux systems: from setting up the virtualization environment to running virtual machines with basic settings.
Renaming the Current File in Vim
Filed under File Editing
Learn how to rename a file in the Vim text editor.
Listing Installed Packages in Order of Installation Dates in Linux
Filed under Administration, Installation
Learn ways to list the currently installed packages on a given system in different Linux distributions.
What Is the Difference Between UUIDs Returned by blkid and mdadm
Filed under Administration
Learn how the Universally Unique IDentifiers (UUIDs) from blkid and mdadm differ.
How to Find Heap Memory of a Running Process
Filed under Processes
Learn how to find the heap memory usage of a running process on Linux.
How to Use Wireless Network in VirtualBox
Filed under Networking
Learn how to use a wireless connection in VirtualBox VMs in NAT and bridged modes.
Modify systemd Config Without Touching Upstream Unit File
Filed under Administration
Learn various ways to modify a systemd config without editing its corresponding upstream unit file.
Understanding the Linux Power Button, Input Events, and Inhibitors
Filed under Administration
Learn how to change the behavior of the power button on a Linux system and control what it does.
How to Restrict a FTP User to a Directory in Linux
Filed under Security
Learn how to restrict an FTP user to one directory when they log into a Linux system.
How to Use OR Patterns in Shell Wildcards
Filed under Scripting
Learn how to use alternatives with OR when using shell wildcards in globbing and regex patterns.
Dump Memory Image From a Linux System
Filed under Administration
Explore how to dump a memory image for forensic analysis.
Passing Multiple Commands to a Kubernetes Container
Filed under Administration
Learn about ways to pass several commands at once to a Kubernetes container.
Difference Between man and info Documentation
Filed under Administration
Learn how the man and info documentation systems differ.
Removing the Last Page of a PDF File From Command Line
Filed under Files
Learn how to remove the last page of a PDF from the command line.
Scheduling Jobs Randomly Within a Specific Period in Linux
Filed under Administration
Learn how to use various Linux tools to schedule jobs for execution at random times.
Clearing IP Address of Ethernet Interface in Linux Without Cycling or Restarting
Filed under Administration, Networking
Learn how to remove one or more IP addresses from a given Ethernet interface without interrupting the system or other interfaces.
How to Find Out the Wireless Card Frequency in Linux
Filed under Administration, Networking
Learn ways to find the current and supported wireless card frequencies.
What Makes locate Faster Than find
Filed under File Searching
Learn about what makes locate faster than find in Linux.
How to Determine Whether a File Is Hard Link or a Soft Link
Filed under Files
Learn how to check whether a file is a soft symbolic link or a basic hard link in Linux.
Running ASP.Net on a Linux-Based Server
Filed under Administration
Learn how to host an ASP.Net web server on a Linux operating system.
How to Monitor the Progress of dd
Learn ways to keep track of the current progress during a dd operation.
Logging Bash Scripts
Filed under Scripting
Learn various ways to implement logging into Bash scripts on Linux.
Different Ways to Efficiently Sort Large Files
Learn several ways to optimize the sort command for large files.
Mount Filesystems Within a Docker Container
Filed under Administration, Filesystems
Learn configuration options to enable mounting host and other filesystems within a Docker container.
When Is Double Quoting Necessary in Bash?
Filed under Scripting
Learn when to use double quotes, how they work, and when to avoid them in the shell.
Zip Multiple Directories Into Individual Zip Files
Filed under File Compression
Learn how to zip multiple directories in Linux.
Different Ways to Share Files Between Linux Machines Over a Network
Filed under Networking
Discover various ways to share files and folders in Linux over a network.
Checking Whether Automatic Updates Are Enabled on Debian/Ubuntu
Filed under Administration, Security
Our Linux package manager may be able to keep our system up to date automatically. We look at how to enable this across a few common package managers.
Transform a JSON String Into a Table Using jq
Filed under File Viewing, Scripting
Learn how to transform a JSON string into tables with various formats.
Purpose of the seek Option in the dd Command
Filed under Files, Filesystems
Learn about and see practical use cases with the seek and skip options of the dd command in Linux.
What Is the TUN Interface Used For?
Filed under Networking
Learn the general idea of the TUN interface along with some real-world use cases.
Allow Password Change That Is Similar to the Previous Password in Linux
Filed under Administration, Security
Learn about ways to set a new password that’s similar to the last one regardless of current security policies.
How to Ping a NIC by MAC Address
Filed under Networking
Learn how to ping by MAC instead of IP address from a Linux system.
Starting a Docker Container on a Remote Host
Filed under Administration
A quick and practical guide to starting a Docker container on a remote host.
How to grep Lines Containing N Digits or Numbers
Filed under Scripting
Learn how to find the lines with the specified count of digits or numbers within a file in Linux.
Optimization of the Sizes of PDF Files on Linux
Filed under File Compression
Learn how to compress PDFs on Linux to reduce their sizes without compromising the quality or content.
Difference Between Makefile.am and Makefile.in
Filed under Building
Learn about the differences between makefile.am and makefile.in files and see how they’re used to compile programs.
Automatic Docker Login in a Bash Script
Filed under Administration, Scripting
A quick and practical guide to automatic Docker ogin in a Bash script.
What Commands Should Be Run After Updating the /etc/passwd File
Filed under Administration, Security
Learn what commands to run for synchronizing and verifying the data within password and account files like /etc/passwd and /etc/shadow after manual edits.
Searching for Patterns in Binary Files
Filed under File Searching
Explore several text-based and GUI-based tools to search for hexadecimal patterns in binary files.
Changing Monitor Brightness on Linux
Filed under Administration
Learn how to change the brightness of the monitor.
Creating an Installer for a Linux Application
Filed under Administration, Installation
Learn in-depth how to create an application installer in Linux step by step.
Passively Monitor TCP Packet Loss in Linux
Filed under Networking
Explore how to passively monitor TCP packet loss in Linux.
How to Repeat Each Line in a File Multiple Times in the Command Line
Learn how to repeat file lines during output.
Sending an SNMP Trap From the Command Line in Linux
Filed under Networking, Scripting
Learn how to set up an environment and send SNMP traps in Linux.
Avoiding the “same file” and Other Warnings While Copying a File Found With find
Learn several ways to avoid common issues when using cp after find.
Buffer and Cache as Reported by the free Command
Filed under Administration
Learn how to use the free command to gain insights into the system’s memory utilization.
Sidecar vs. Init Container in Kubernetes
Filed under Administration, Processes
Learn the differences between sidecar and init containers.
How to Create Automatically Expiring User Accounts?
Filed under Administration
Learn different ways of creating a temporary user in Linux.
Why Do We Need the fork System Call to Create New Processes?
Filed under Processes
Discover why we use the fork system call to create a child process.
Returning Only One Value Using ldapsearch
Filed under Administration
Learn how to get only single values with ldapsearch.
How to Use a Different Username by Default in SSH for a Specific Host
Filed under Administration
Learn several ways to set a specific username when connecting to a host with SSH.
How to Grep a Substring Between Quotes
Filed under Search
Learn how to find substrings within quotes using the grep command.
DevOps Lead with Experience in LAMP/LEMP and CI/CD Stack (remote, part-time)(not open)
Filed under Administration
This role is not currently open. Description We’re looking for a DevOps Lead experienced in the following areas: WordPress installation and administration Installation/maintenance/administration of open-source web servers & tools like Nginx, Apache, Redis, Memcached, and PHP on Linux MySql / MariaDB administration and performance optimization on Linux Cloudflare Shell / Bash scripting Linux server administration […]
Handling Signals in Bash Script
Filed under Scripting
Learn how to use traps in Bash scripting to handle various types of signals.
How to Get the Current Connection Information in Linux
Filed under Networking, Processes
Learn how to use the ss command to query socket information.
How to Cancel a Job
Filed under Processes
Learn how to cancel or kill a job in Linux.
How to Send Large Files Using cURL
Filed under Networking, Scripting
Learn helpful ways and strategies for sending big files via curl.
Differences Between vmlinux, vmlinuz, vmlinux.bin, zimage, and bzimage
Filed under Administration
Discover various kernel images.
Managing the GRUB Menu in Fedora Distributions
Filed under Administration
Learn how to modify the GRUB boot menu in Fedora and RHEL-based Linux distributions.
Understand the Total Output of ls
Filed under Administration, Files
A comprehensive guide to “total” output of ls command.
Port Redirection on a Local Linux Machine
Filed under Networking
Learn how to redirect one port to another with different tools and methods.
Getting the Value of a Memory Address From the Command Line
Filed under Processes
Learn two methods to read data stored at a given address of a specific process’s memory space.
Forward HTTP Post Request via Rewrite
Filed under Web
Explore how to forward HTTP POST requests via rewrite in Nginx.
Adding Field to a JSON Object
Filed under Scripting
Learn about Linux tools that can add fields and objects to an existing JSON object within a file.
Enabling PowerTools Repository in CentOS and RPM Distributions
Filed under Administration, Installation
Learn how to configure and enable the PowerTools repository in CentOS, RHEL, and other RPM-based Linux distributions.
How to Match a String with a Fixed Numbers of Characters in Linux
Filed under Scripting
Learn how to match a string by its number of characters.
Finding MTU Between Localhost and Destination IP
Filed under Networking
Learn hot to extract the network MTU value for a given IP address or route.
Sending Signals to a Process Running in a Docker Container
Filed under Processes
Learn three ways of sending a signal to a process running in a Docker container.
How to Check Whether Port Forwarding Is Enabled on a Linux Machine
Filed under Administration, Networking
Learn how to check if port forwarding is in place.
Get Current Image of Kubernetes Deployment
Filed under Administration
Learn how to get info for a Kubernetes deployment on Linux.
Accessing the BIOS Information in Linux
Filed under Administration
Learn how to access BIOS information in Linux.
How to Block Certain Websites From the /etc/hosts File
Filed under Networking
Learn how to prevent access to specific websites using the /etc/hosts file.
Copying Hidden Files Recursively
When copying files, we may wish to include hidden files in our archive. We look at a few ways to achieve this.
How to Setup Default YUM Repositories in RHEL
Filed under Installation
YUM helps us install packages in Red Hat Enterprise Linux. We look at how to set up the repositories that YUM uses.
Checking the Version of NFS That an NFS Server Is Using
Filed under Administration, Networking
Learn how to check the version of an NFS server.
How to Sort the Files in a Directory Recursively Based on the Last Modified Date
Filed under File Searching
Explore several methods of recursively sorting files in a directory based on the last modified date.
Restricting Computer Time on Linux
Filed under Administration, Security
Learn how to use Timekpr-nExT to limit the time a user can use the computer.
How to Remove Lines That Contain Fewer Than n Characters
Filed under File Editing, Scripting
Learn many ways to remove lines from a file based on the minimum number of characters in them.
Is Disabling SSL V3 a Solution for Poodle?
Filed under Security
We learn how a POODLE downgrade attack works and how to prevent it by disabling out-of-date versions of SSL.
The Default Sorting Order of the find Command
When listing files on the filesystem we may wish to apply different sort orders. We look at how to sort the output of the find command.
How to Get Total Read and Total Write IOPS in Linux
Filed under Administration
Learn iostat commands to extract different Input/Output Operations Per Second (IOPS) statistics.
Getting Information About Currently Unmounted Drives
Filed under Filesystems
This tutorial explains various Linux commands that provide information about block devices that aren’t mounted, including lsblk, fdisk, and querying the sysfs directory.
Controlling a USB Port Power Supply With Linux
Filed under Administration
Learn several ways of controlling the power supply to a USB port in Linux.
Waiting for Server Restart in Ansible
Filed under Administration, Networking
Learn how to pause a playbook and restart a server in Ansible.
Disabling a Wireless Network From the Linux Command Line
Filed under Administration, Networking
Learn ways to disable wireless networks and interfaces from the Linux command line.
How to Install Only Security Updates in Linux
Filed under Installation, Security
Learn how to install security updates in Linux with Ubuntu as an example.
How to Append a String Variable to Itself in Bash
Filed under Scripting
Learn shell-specific and universal ways to prepend or append a string variable to itself.
Copying Files With Different Specific Extensions Using the find Command
Learn how to use the find command for copying files based on various extensions.
How to List Namespaces in Linux
Filed under Administration
Learn how to list namespaces in Linux.
Conversion of a PowerPoint PPT File to PDF From the Command Line
Filed under Files
Learn methods to convert PowerPoint files to PDF from the Linux command line and GUI.
Passing Ctrl+C Over a SSH Connection
Filed under Networking
Learn how an SSH session handles the Ctrl+C process interrupt signal under various circumstances in Linux.
Checking How Much Power a USB Port Delivers
Filed under Administration
Learn ways to check the power consumption of a given USB port and device.
Enter Non-ASCII Characters in vi Using Hex or Octal Codes
Filed under File Editing
A quick and practical guide to entering non-ASCII characters in vi.
Comparing a Remote File With the Local One Without Copying
Filed under Files
Learn how to compare the contents of a remote file with a local file, without transferring the file.
Viewing IPv6 Addresses in Linux
Filed under Networking
Learn about checking the version 6 IP addresses on all interfaces of a Linux system.
Waiting for the Network Being Up in a Bash Script
Filed under Networking, Scripting
Learn how to write a Bash script that checks if the network is up on a Linux system.
How to Find Out What Is Using a Kernel Module
Filed under Administration
Explore tools and methods for discovering what processes or apps use a specific kernel module.
LDAP Authentication From the Command Line in Linux
Filed under Administration
Learn how to perform LDAP authentication from the Linux command line.
Does Killing an SSH Session Kill the Programs?
Filed under Administration, Networking
Understand what really happens to running programs when we disconnect an SSH session.
Checking Which Services Need Restart After the System Update
Filed under Administration
Learn how to check which services need to be restarted after a system update in Linux.
Conversion of CSV to TSV in Linux
Filed under Files
Learn many ways to convert comma-separated value (CSV) to tab-separated value (TSV) files.
Listing the Active Directory User Attributes
Filed under Administration
Learn how to get the attributes of Active Directory users from Linux.
Automatically Starting Services in a Docker Container
Filed under Administration
Learn how to start Docker container services automatically.
How to Check Whether a USB Device Is Present on a Linux Machine
Filed under Administration
Learn ways to confirm the presence of a USB device on a Linux system.
Capturing the Network Traffic of a Process
Filed under Networking
Learn several ways to capture the network traffic generated by a given Linux process.
Allowing Traffic From a Domain With Dynamic IP Address
Filed under Networking, Security
Explore different options to configure firewall rules to allow access from a dynamic IP address.
Finding Frames per Second of a Video File
Filed under Files
Learn how to find the frames per second of a video file with ffmpeg and mediainfo on Linux.
List All Vhosts in Nginx
Filed under Networking
A quick and practical guide to listing all virtual hosts in Nginx.
Checking the Signals a Process Is Listening To
A quick and practical guide to finding the signals a Linux process is listening to.
CMake for Cross-Platform Compilation
Filed under Scripting
Learn how to use CMake to compile C/C++ programs for cross-platform compatibility.
Determining the Key Size Using OpenSSL
Filed under Administration, Security
A quick and practical guide to determining the key size using OpenSSL.
Limit Root User’s Ability to Delete a File
Filed under File Permissions
A quick and practical guide to limiting root users’ ability to delete a file.
What Are the Default and Most Common Terminal Encodings in Linux?
Filed under Security
Learn what character encoding is and how it’s used.
Enable Auto Completion for Remote Paths When Using scp
Filed under Administration
Learn how to enable Bash auto-completion when querying for remote file paths while using scp.
Bridging Network Interfaces in Linux
Filed under Networking
A quick and practical guide to bridging network interfaces in Linux.
Infinite Sleep for Infinite Blocking in Bash
Filed under Processes
Learn how to place a process or shell in an infinite blocking sleep under Linux.
Block Access of a Process to the Network
Filed under Security
Learn how to restrict the running environment of untrusted applications using Linux namespace and sandboxing.
How to Convert Binary to Hex and Decimal in the Shell
Filed under Scripting
Learn how to convert binary numbers to decimal and hexadecimal in the Linux shell.
Checking the Status of a Service Without Having an Exact Name
Filed under Administration
Learn about different initialization managers and how to find the status of a service without having the full name.
Why Are Hard Links Not Allowed for Directories?
Filed under Filesystems
Explore why hard links aren’t allowed for directories in Linux.
How to Unlock /var/lib/dpkg/ Directory?
Filed under Filesystems, Installation
When using the apt or dpkg installer we may encounter a lock error if an installation is running, or has been interrupted. We look at how to resolve this issue.
Managing Password Complexity in Linux
Filed under Administration, Security
This article provides a tutorial on setting up a firm password policy for Linux systems using Pluggable Authentication Modules (PAM). It covers the configuration files and modules used for password management, as well as password quality, history, aging, and lockout.
Prevent Apache From Serving a Specific Directory
Filed under Security
Learn how to prevent the Apache2 web server from serving particular directories.
How to Check HDD/SSD Temperature in Linux
Filed under Administration
Discover how to read HDD (Hard Disk Drive) and SSD (Solid-State Drive) temperatures from the Linux command line.
How to Quickly Extract an ISO Image in Linux
Filed under Files
Find out which Linux tool is the fastest at extracting an ISO file.
Create Named Unix Sockets With Python
Filed under Networking
Learn how to leverage Python for creating and using named Unix sockets.
Changing the Colors of Files and Directories in ls Output
Filed under Files
Explore how to change the color of files and directories in the ls command.
Loading Kernel Modules in a Docker Container
Filed under Administration
Learn the connection between the Docker container and Docker host kernel modules.
How to Test DNS Speed
Filed under Networking
Learn how to test the performance of different DNS servers relative to a client.
Logging Every Command Executed by a User
Filed under Administration
Learn how to use the rsyslog service to log every command a user executes in Linux.
Deleting Files With Logrotate
Filed under Administration
Learn how to delete files using the logrotate utility.
What Is Metadata and How Does It Aid in the fsck Process?
Filed under Files
Learn about metadata and how to display it with fsck in Linux.
How to Install Boost on Ubuntu
Filed under Installation
Learn how to install the Boost C++ libraries on Ubuntu Linux.
Using Awk With a Compressed File
Filed under File Compression, File Viewing
Learn how to use the awk command to read data from compressed files in Linux.
Copy Files Based on a Condition
Filed under Files
Learn a way to copy files according to metadata conditions.
How to Remove and Disable Snap
Filed under Installation
The snap package manager may impose limitations on how certain software is installed. We can disable it from our system if needed. We look at how to do this.
Does initramfs Use /etc/fstab?
Filed under Filesystems
Learn whether and how initramfs uses the /etc/fstab file.
How to Determine a Specific File Responsible for High I/O
Filed under Administration
Learn ways to identify files linked with an abnormally high input or output bandwidth utilization.
The install Command in Linux
Filed under Installation
Learn the ins and outs of the install command under Linux.
Differences Between rm and unlink Commands
Filed under Files
Learn how the rm and unlink commands differ on Linux.
How to Display Control Characters in Gedit
Filed under File Viewing
Learn how to show special and non-printing characters in Gedit.
Avoiding the nohup Command’s Input/Output Message
Filed under Scripting
Learn how nohup works and explore two methods to avoid generating nohup.out and the associated terminal messages.
What’s the Difference Between fdisk and parted
Filed under Filesystems
Discover the difference between the fdisk and parted commands.
How to List All Physically Installed Network Cards in Linux
Filed under Administration, Networking
Learn how to show all attached network cards in Linux.
Downloading All Files From an FTP Server
Filed under Files, Networking
Learn tools and methods to download all files from an FTP server.
Finding Strings From Binary Files in Linux
Filed under File Searching
Learn different ways to extract and search text from binary files.
How to Unmount a Formerly Chroot’d Filesystem
Filed under Administration, Filesystems
A quick and practical guide to unmounting a chroot’d filesystem.
Checking Whether Logged in via VPN
Filed under Administration, Networking
A quick and practical guide to determining whether a device is connected to a VPN.
Command Line Charting and Plotting Tools
Filed under Scripting
Explore many command-line interface tools for charting and plotting in Linux.
Pinging Multiple IP Addresses or Hosts With One Command
Filed under Networking, Scripting
Learn methods for pinging multiple endpoints with a single command.
How to Get and Set the Volume Level Using the Command Line
Filed under Administration
Learn how to get and set the volume level from the command line.
Finding the Device Driver Used for a Device
Filed under Administration
Learn standard methods for checking the drivers of system devices under Linux.
How to Run the time Command on Multiple Commands
Filed under Scripting
Learn how to use a single line of code to run the time command on multiple commands.
Setting the User in a Docker Container From the Host
Filed under Administration
Learn how to set a user in a Docker container from the host.
Install Debian Package From an Unsigned Repository
Filed under Installation
Learn how to install a Debian software package from an unsigned package repository.
Checking RPM Dependencies From the Command Line
Filed under Administration, Installation
Learn ways to check the dependencies of installed and non-installed RPM packages with different tools.
Redirection Status Codes: 301, 302, 307, 308
Filed under Web
Learn about web server redirection status codes and how they differ from each other.
Executing an SQL Script From the Command Line
Filed under Processes
Learn how to execute an SQL script from the command line on Linux.
How to Remove the Timeout From GRUB Menu
Filed under Administration
When using the GRUB boot loader, we may wish to reconfigure the timeout to make it easier to select the right boot option. We look at how this can be achieved.
Copy Variables Between Stages in a Multi Stage Docker Build
Filed under Administration
Learn different methods to copy variables between stages in a multi-stage Docker build.
How to Prepend a Timestamp to the Output of a Command in Linux
Filed under Scripting
Learn how to prepend a timestamp to the output of an executed command in Linux.
How to Use a Regex Inside an if Clause in Bash
Filed under Scripting
A quick and practical guide to using a regex inside an if clause in bash.
Create a File Image Container or Filesystem in a File
Filed under Filesystems
Learn how to create, format, and mount a filesystem within a file.
How to Transfer a File From Windows to Linux
Filed under Administration, Files
Learn diverse ways to transfer a file between Windows and Linux.
The Pipe Buffer Capacity in Linux
Learn what pipe buffer capacity is and how to find it in Linux.
Creating a New SSH User
Filed under Administration
A quick and practical guide to creating a new SSH user.
Difference Between systemctl mask and systemctl disable
Filed under Administration
Learn how to control processes using systemd.
Extracting Frames From a Video Using FFmpeg
Filed under Scripting
FFmpeg is the most common Linux tool for manipulating video files. We look at how to use it for frame extraction.
Getting Notification When systemd Service Fails
Filed under Administration
Learn how to use the systemd OnFailure feature to trigger notifications and how to configure notification channels over Slack and email.
How to Create a Shortcut to Execute a Shell Script in Bash
Filed under Administration, Scripting
A quick and practical guide to creating a shortcut to a shell script.
Offline Installation of an RPM Package and Its Dependencies
Filed under Installation
Learn how to install an RPM package offline, along with its dependencies, on Linux.
How to Set a Non-expiring Password on Linux
Filed under Administration, Security
Learn ways to prevent a Linux user password from expiring.
Appending Text to a File Without Using I/O Redirection
Filed under File Editing
Learn several ways to append text to a file with and without redirection operators.
Differences Between cgroups and Namespaces in Linux
Filed under Processes
A quick and practical comparison between cgroups and namespaces.
How to Do Nothing for an Indefinite Amount of Time in Shell
Filed under Scripting
A quick and practical guide to waiting for an indefinite time in terminal.
Mouse Events and Input Event Interface in Linux
Filed under Scripting
Learn how to read mouse input and events on Linux and use Bash scripting to simulate mouse movement.
What Are the Differences Between Snap and Apt Package Management System?
Filed under Installation
APT and Snap are package managers we can use with Linux. We look at how they work and how they handle packages differently.
Host PID of a Process Running in a Docker Container
Filed under Processes
Learn how to get the host PID of a process within a Docker container.
How to Make a File Unmodifiable in Linux
Filed under Administration, Files
Learn two ways to make Linux files immutable.
Mount Device With Specific User Rights
Filed under Administration, Security
Learn how to control user rights when mounting in Linux.
How to Change Desktop Wallpaper from the Terminal
Filed under Administration
We may wish to change our desktop wallpaper from the command line. We look at how to do this for some common Linux desktop environments.
Separate Home Partition – Pros and Cons
Filed under Administration, Files
Explore the pros and cons of having a separate home partition in Linux.
Show Surrounding Lines Using Grep Command in Linux
Filed under File Searching
Learn how we can use grep to get information around a matched string.
Alias a Hostname in Linux
Filed under Administration, Networking
Explore three methods for aliasing hostnames in Linux: using the SSH config file, using environment variables, and editing the /etc/hosts file.
Insert Newline Without Leaving Normal Mode in Vim
Filed under File Editing
Explore plenty of effective ways to insert a new line without leaving normal mode in Vim.
How to Check TCP Timeout in Linux
Filed under Administration, Networking, Web
Explore different ways to check for TCP timeouts in Linux using various system files.
How to Extract the Base Filename From a URL in Shell
Learn how to extract the base filename from a URL using the Linux shell.
What’s the Purpose of the -f Option in the rm Command
Filed under Administration, Files
Learn the uses of the -f switch of the rm command.
How to Access the Default Logs Directory for Package Managers in Linux
Filed under Administration
A quick and practical guide to accessing the default logs directory for package managers in Linux.
How to Kill a Process Based on the Process Arguments
Filed under Administration, Processes
A quick and practical guide to killing a process based on the process arguments.
How to Trim Whitespace From a Bash Variable
Filed under Scripting
Learn about several ways to remove whitespace in and around a Bash variable.
Real-Time Process Scheduling in Linux
Filed under Processes
Learn how to manage real-time processing policies in Linux.
How to Get the Netmask From an IP Address
Filed under Networking
Learn how to get the netmask from an IP address using different commands.
Checking Weather from the Command Line
Filed under Administration, Scripting
A quick and practical guide to checking weather from command line.
Checking BIOS Version and Name From the Command Line
Filed under Administration
Learn about ways to extract information about the BIOS of a Linux system.
How to Safely Move /tmp to a Different Partition
Filed under Administration, Files
Learn about the /tmp directory and how to safely relocate it to a new partition.
Checking vi Version Installed on a Linux Machine
Filed under Administration
Learn how to check the installed version of the vi editor on Linux.
Extracting Album Covers from Audio Files in Linux using EyeD3
Filed under File Viewing
Learn how to extract the album cover from an audio file in Linux using the EyeD3 command line tool.
How to Setup Search Indexing for an Entire Linux System
Learn about using find, locate and recoll to find files
How to Write iptables Logs to a Separate File
Filed under Administration, Networking
A quick and practical guide to logging iptables to separate file.
How to Use an Already Established SSH Channel
Filed under Networking
A quick and practical guide to reusing an already established SSH channel.
Meaning of Systemd multi-user.target
Filed under Administration, Processes
Learn about Systemd targets and the multi-user target in particular.
Moving Files to Directories Based on the Extension
Filed under Administration, Filesystems
Learn about ways to move files based on their extension.
Set and Determine the Baud Rate of a Serial Port in Linux
Filed under Administration, Networking
Learn how to get and set the baud rate of a serial port in Linux.
How to Combine Two Logical Volumes on a Single Physical Volume With LVM
Filed under Administration, Filesystems
Learn about logical volume management and how to combine two logical volumes on a single physical one via LVM.
What’s the Difference Between bash script.sh and ./script.sh
Filed under Scripting
Learn about two methods to invoke shell scripts.
How to Login as User “jenkins” After Installing Jenkins
Filed under Administration, Installation
Explore several solutions for not being able to su to the jenkins user after installation.
How to Expire a Password for Initial Account Creation
Filed under Administration, Security
Learn about tools and methods to expire a Linux account password.
Create VLANs in Linux
Filed under Networking
Learn various commands for creating and setting up VLANs in both Debian and RedHat systems.
Start Systemd Service After Specific Service
Filed under Administration, Processes
Learn about service order and starting one systemd service after another.
The wait Command in Linux
Learn about the wait command and different ways to use it.
Start a systemd Service Conditionally
Filed under Administration
Learn how to start a systemd service only when certain conditions are in place.
How to Store Standard Error in a Linux Variable
Filed under Scripting
How to redirect standard error output and store it in a variable.
How to Configure File System Caching in Linux
Filed under Filesystems
Learn about, configure, and optimize file system caching under Linux.
Why Was 1 January 1970 Used as the Epoch Time?
Filed under Processes
1st January 1970 is known as the epoch time in Unix. It’s where all system clocks hit zero. We look at why this is the case and some alternatives that were considered.
Prevent Jenkins Build From Failing When Execute Shell Step Fails
Filed under Processes
Explore several methods to prevent Jenkins build failures.
Restarting a MySQL Server in Linux
Filed under Processes
Explore different ways to restart a MySQL server on Linux.
Iterate Over a Range of Numbers Defined by Variables in Bash
Filed under Scripting
Learn about different constructs in Bash for iterating over a range of numbers defined with variables.
Iterating in Reverse Using for Loops and Other Constructs
Filed under Scripting
Learn how to iterate in reverse via for loops and other constructs.
Managing Processors Availability
Filed under Processes
Learn how to manage processor availability by assigning processes to different CPUs on Linux.
Using Active Directory to Authenticate Linux Users
Filed under Administration, Security
Learn how to authenticate a Linux client through an Active Directory.
Creating User’s Services With systemd
Filed under Processes
Learn how to run services as a different user with systemd on Linux.
Print Decimal as ASCII Using the Shell
Filed under Scripting
Learn how to print decimal numbers as ASCII in the Linux shell.
Setting the Default python to python3
Filed under Administration
Learn how to set a default Python version in Linux.
Set up a Port Forward Using UFW
Filed under Networking, Security
Learn how to use UFW to do port forwarding.
Opening PDF Files From the Command Line
Filed under Files
Learn how to open PDF files with different tools from the Linux command line.
Copying Files Based on Modification Date in Linux
Filed under Files
A quick and practical guide to copying files based on their modification date.
How to Check the Existence of Input Argument in a Bash Script
Filed under Scripting
Learn about checking for the existence and non-zero length of Bash script arguments.
Dropping Page Cache in Linux
Filed under Administration
Learn how to manage and monitor the page cache in Linux.
Exclusion of a Specific Directory While Using ls Command
Filed under Files
Explore three different methods for excluding a specific directory from the ls command’s output.
Setting Expiration Time for Static Contents in Nginx
Filed under Web
Learn how to set an expiration time for an Nginx proxy cache.
Shell Auto Completion in Linux
Filed under Scripting
Learn how to edit and add new functions to Bash auto completion in Linux.
How to Iterate Over a List of Strings in a Shell Script
Filed under Scripting
Explore the most common situations for looping over a list of strings.
Filter Processes by Process Names With top
Learn how to single out processes by name via the ubiquitous Linux process monitor.
How to Do a Complete Clean Reinstall of MySQL on Linux
Filed under Administration, Installation
Learn about completely wiping and reinstalling MySQL on Linux.
Pass the Password to su/sudo/SSH Without Overriding the TTY
Filed under Administration
A quick and practical guide to passing the password without overriding TTY.
Get TX/RX Bytes Without ifconfig
Filed under Networking
Learn some alternative ways to read the TX/RX information, since ifconfig is deprecated and no longer supported.
List Files in Linux With the Full Path
Filed under File Viewing
Learn many ways to list files in Linux with the full path.
Understanding SSHFS
Filed under Filesystems
A quick and practical guide to SSHFS.
Executing Multiple Commands in Find -exec
Filed under Scripting
Learn three ways of executing a sequence of commands on the output of the find command
How to Output a Variable in Nginx Log for Debugging
Filed under Administration, Web
Learn about variable output in the logs of Nginx.
How to Navigate Man Pages Efficiently
Filed under Administration
Learn how to navigate manual pages efficiently.
Why Is chmod -R 777 / Destructive
Filed under Administration, Security
Learn the consequences of recursively providing permissions to everybody over the filesystem root.
Parallel Archiving Files in Linux
Filed under Files, Filesystems, Processes
Learn how to archive files in Linux in a parallel way.
Splitting a Large Nginx Configuration File
Filed under Administration, Networking
Learn how to create an Nginx configuration split among multiple files.
Path of Bash Script From Symbolic Link
Filed under Administration, Files, Scripting
Explore two ways of determining the absolute path of a bash script, irrespective of how it is invoked.
Custom Welcome Message for SSH
Filed under Administration
Learn how to configure a custom welcome message when logging in via SSH.
How Is ZFS Different From XFS
Filed under Filesystems
Learn about the differences between ZFS and XFS filesystems.
Different Types of Shebang in Linux
Filed under Scripting
Learn about some of the types of shebang lines commonly used.
Difference Between apt and apt-get
Filed under Administration, Installation
Learn the difference between the apt and apt-get utilities in Linux.
Add Indentation and Guides to Vim’s Edit View
Filed under File Editing
Learn how to add indentation and guides to Vim’s edit view on Linux.
Adding Other Operating Systems to the GRUB Bootloader
Filed under Administration
Learn how to add different Operating Systems to the boot menu.
Nginx Flags: Difference Between break and last
Filed under Administration, Web
Learn about two Nginx flags with a simple example using each.
Difference Between apt-get update and apt-get upgrade
Filed under Administration, Installation
Learn about the differences between updating and upgrading when using the Advanced Package Tool (APT).
How to Reinstall Apt on Ubuntu/Debian
Filed under Administration, Installation
Learn how to reinstall the apt package on a Ubuntu 20.04 system.
Serving Multiple Proxy Endpoints Under a Location in Nginx
Filed under Web
Learn how to set up two or more reverse proxy endpoints under a location with Nginx.
Test Whether a Server Is Vulnerable to Shellshock Bug
Filed under Security
Learn about the shellshock bug and how to mitigate it.
Why Is There a Delay After Entering a Wrong Password at Login?
Filed under Security
For security reasons, Linux will delay before completing a login or sudo with an incorrect password. We look at why this is the case, and how to configure it.
What Is an ELF File?
Filed under Administration, Files
Learn about an Executable and Linkable Format (ELF) file and its structure.
Convert INI File Into a Bash Array
Learn how to convert an INI file to a Bash array in memory using basic primitives in scripting.
Comparing Directory Structure Without Comparing Files
Filed under Files
We may wish to check similarities or differences between two directory structures, but Linux doesn’t support this directly. We look at a few tools that can help us.
Managing the Way the File Is Cached in RAM
Filed under Administration, Processes
Learn commands to monitor and manage loading files in the disk cache.
How to Control Variable Access in the sudo Environment?
Filed under Administration, Processes
Learn how to pass environmental variables to the sudo shell.
How to Delete Files With Names That Contain Non-printable Characters
Filed under Administration, File Viewing, Filesystems
Learn about ways to delete files with names that contain non-printable characters.
Navigating in a File in Vim
Filed under File Searching, File Viewing
Learn how to navigate a file in Vim using motions, marks, jumps, and changes.
Swap Partition vs Swap File
Filed under Administration
Learn about the differences between a swap file and a swap partition.
Resolving Unmet Dependencies on Linux
Filed under Administration
Learn about the meaning of “unmet dependencies” error when using the apt-get command.
Using systemctl to List All Failed Units
Filed under Administration
Learn how to list all the failed units in your system using the systemctl command.
How to Run a Cron Job Periodically Between a Time Range
Filed under Administration, Scripting
Learn how to schedule a job to run periodically within a given time range.
How to Renew DHCP IP Address in Ubuntu
Filed under Networking
Learn how to acquire a new IP address on the Ubuntu system.
Linux Overcommit Modes
Filed under Processes
Learn about the memory overcommit concept.
How to Use the Batch Mode of rsync
Filed under Administration, Scripting
Learn how to keep multiple local and remote copies of a directory synchronized quickly and easily.
How to Setup a Base Package Repository in RHEL
Filed under Administration, Installation
Learn how to setup a base package repository in Red Hat Enterprise Linux.
jmap Error “Unable to Open Socket File”
Filed under Processes
Discover why jmap can return an “Unable to open socket file “error when creating a heap dump.
How to Uninstall Nginx Completely
Filed under Administration
Learn how to uninstall NGINX in Linux.
Check How Long the Linux System Has Been Running
Filed under Administration
Learn how to check how long a Linux system has been running.
Output a List of Changed Files From rsync
Filed under Administration, File Permissions
Learn how to display information about changed files and pending actions with Rsync.
Docker Compose: Wait for Container X Before Starting Y
Filed under Administration, Scripting
Learn how to configure a Docker container to wait for another to fully start before running.
Properly Remove an RPM Package
Filed under Administration, Installation
Learn to remove RPM packages with and without dependency checking.
PC Speaker Beep in Linux
Filed under Scripting
There are several ways to make sound from a shell. We look at a variety of tools that can be used to play everything from a beep to a full song.
Using sar to Show Current and Past System’s Statistics
Filed under Administration, Processes
Explore the sar command to report various kernel activities.
Difference Between VBoxVGA, VMSVGA, VBoxSVGA in VirtualBox
Filed under Administration
Learn about VirtualBox display adapters.
Connecting to a Windows Machine From Linux With Putty
Filed under Administration, Networking
Learn how to install OpenSSH on Windows and connect to it from Linux via PuTTY.
Checking the Number of Open HTTP Connections With Netstat
Filed under Networking, Web
Learn about HTTP and how to use netstat to check the number of open HTTP connections.
Creating a Non-login User on Linux
Filed under Administration
Learn several ways to create a new user that is unable to log in.
Too Many Authentication Failures Error and Its Consequences
Filed under Security
Learn how to get rid of the Too many authentication failures error when using a public key identification.
Guide to the Boot Process of a Linux System
Filed under Administration
Learn about each step of the boot process of a Linux system.
Difference Between NEW, ESTABLISHED, and RELATED Packets
Filed under Networking
Learn about NEW, ESTABLISHED, and RELATED iptable states.
Continuously Sync Files One-Way on Linux
Filed under Files
Explore a few tools for a regular or real-time backup of parts of our Linux filesystem.
Add a Volume to an Existing Docker Container
Filed under Administration, Filesystems
Learn about ways to add a volume to an existing Docker container.
Run Cron Job Manually With Proper Environment
Learn how to simulate the cron’s environment.
Meaning of * * * in the Output of traceroute
Filed under Networking
Learn what *** means in the output of traceroute.
Creating and Removing systemd Services
Filed under Administration
Learn how to create and remove systemd service files
Validating Certificates Using cURL
Filed under Web
Learn about cURL and how to use it for validating certificates.
Running Xcode in Linux
Filed under Installation
Learn about ways to run Xcode in Linux.
Checking Whether a Firewall Is Running on Linux
Filed under Networking, Security
Learn various methods to check firewall status in Linux.
Add a User in Alpine Docker Image
Filed under Administration
Learn how to add users and correct their permissions in Docker containers with Alpine Linux.
Autocompletion Support in Vim
Filed under File Editing
Learn about autocompletion in Vim.
How to Count Words in a File
Filed under Files
Learn how to count words in a file.
How to Work With Multipart Zip Archives and Split Files?
Filed under File Compression
Learn how to split a file into parts and join pieces back together.
Integrate GDB With Vim
Filed under File Viewing, Processes
Learn how to integrate the GNU Debugger with the Vim editor.
How to Set Default Entry for the Grub Menu
Filed under Administration
Learn how to customize the GRUB menu.
Select All Contents in a File Inside Vim
Filed under File Editing
Learn how to select contents of a file with vim editor on Linux.
Reset a Lost User’s Password
Filed under Administration
Explore various ways to reset a lost password and recover your account.
How Do I Find if There Is a Rogue DHCP Server on My Network
Filed under Networking
Learn how to detect rogue DHCP servers.
Linux Network Bonding
Filed under Networking
Learn how to bind together Internet interfaces.
Find and Remove Large Files That Are Open but Have Been Deleted
Filed under File Editing
Learn how to clean up the contents of files without references.
Difference Between resolve.conf, systemd-resolve, and Avahi
Filed under Networking
Learn about the differences among resolv.conf, systemd-resolve, and Avahi and how they resolve IP addresses.
List Assigned DHCP IP Addresses
Filed under Networking
Learn the commands to ask the DHCPD server to list assigned DHCP IP addresses.
Difference Between sites-available, sites-enabled, and conf.d Directories
Filed under Administration
Learn the function and differences between some standard server configuration directories.
Access the Host Machine From the Guest Machine
Filed under Networking
Learn how to set up guest-to-host access in VirtualBox.
Compare Variables With Numbers in Bash
Filed under Scripting
Learn how to use square brackets and double parenthesis to compare variables with numbers in Bash
Linux Filesystem Guide
Filed under Filesystems, Series
A series of tutorials on Linux filesystems.
How to Kill All Stopped Jobs in Linux
Filed under Processes
Learn about ways to detect and kill all stopped jobs in a Linux system.
Run Multiple Commands in Docker CMD Directive
Filed under Scripting
Explore multiple ways to define more than a single command in the Docker CMD directive.
Determine Whether a Shell Variable Is Empty
Filed under Scripting
Learn different methods to determine if a shell variable is empty in Linux.
Share Config Between Vim and Neovim
Filed under File Editing
Learn how to share the configuration between Vim and Neovim.
Interactive, Non-interactive, Login, Non-login Shells in Linux
Learn about the different kinds of shells we can get in the Linux environment.
The update-alternatives Command in Linux
Filed under Administration
Learn how to manage alternative programs.
How to Find File Encoding in Linux
Filed under File Viewing
Explore two methods to find the character encoding of a file in Linux.
Override CMD When Running a Docker Image
Filed under Files
Learn about ways to override the Dockerfile CMD when running a Docker image.
The /proc/meminfo File in Linux
Filed under Administration
Learn about the definition of each memory attribute field in the /proc/meminfo file.
Make Apache Web Server Listen on Two Different Ports
Filed under Administration, Networking
Learn how to configure the Apache web server to listen on two different ports.
Resolving MAC Address From IP Address in Linux
Filed under Networking
Learn the difference between an IP and MAC address, and how to resolve the MAC address from a host’s IP.
Configuring DNS in the resolv.conf File
Filed under Networking
Learn multiple ways to configure DNS in Linux.
How to Automate HTML-to-PDF Conversions
Filed under File Editing, Files
Learn how to convert HTML documents to PDF in Linux.
How to Install and Use Popular Linux Bootloaders
Filed under Administration
Learn about a few popular Linux bootloaders and how to install and use them.
How To Detect Disk’s I/O Bottlenecks
Filed under Administration
Learn how to monitor resource availability in the context of I/O operations.
Optimize Battery Life in Linux
Filed under Administration
Learn how to optimize the battery’s life in computers with Linux operating systems
Converting Strings to Numbers in the Linux Command Line Interface
Filed under Scripting
Learn how to convert strings to numbers and perform calculations.
Accessing BitLocker-Encrypted Device in Linux
Filed under Security
Learn how to access a BitLocker-encrypted device in Linux.
Checking Environment Variables of a Running Process
Filed under Processes
Learn about ways to check the environment variables a Linux process uses.
Difference Between Unix and TCP/IP Sockets
Filed under Networking
Learn about TCP/IP sockets and Unix sockets
Linux GUI Tools for Git Similar to Sourcetree
Filed under Administration
Explore two git graphical user interface clients meant for Linux – Git Cola and Gitg.
How to Change HDD State From Read-Only After Temporary Crash in Linux
Filed under Filesystems
Learn how we can change a device state from read-only after a temporary crash in Linux.
Purpose of Swap Files in Vim
Filed under Administration, Files
Learn about the swap files of the vim editor.
Allow Users in fstab File to Read and Write to a Partition
Filed under Administration, Filesystems
Learn more about the fstab file and how we can use it to allow users to read and write to a partition
Restart a Stopped Docker Container
Filed under Administration
Learn how to restart a stopped Docker container and automate the process.
Playing Audio Files From the Linux Command Line
Filed under Files
Learn to play audio files from the Linux command line.
How to Re-Install GRUB EFI
Filed under Installation
Learn about GRUB 2, how to re-install it, and repair it if any issues are found.
Setting Environment Variables for systemd Services
Explore different ways to set environment variables for daemons managed by systemd.
Checking a User’s Sudo Access
Filed under Administration, Security
Learn how to check if a user might use sudo.
How to Extend Logical and Extended Partitions With fdisk
Filed under Filesystems
Learn to extend logical and extended partitions with fdisk on Linux.
Check if a Process Is Running in Linux
Filed under Processes
Learn various commands to check if a process is running in Linux.
Linux Memory Overcommitment and the OOM Killer
Filed under Administration, Processes
Learn about the Linux way to manage memory.
Unlocking a Linux User Account After Too Many Failed Attempts
Filed under Administration, Security
Learn how to unlock a Linux account after too many failed login attempts.
Setup Default Desktop Environment on Start Up
Filed under Administration
Learn how to set up your favorite Desktop environment to start up with your system.
Using Telnet in Linux
Filed under Networking
Learn how to install and use telnet on a Linux machine.
Difference Between ifconfig and ipconfig
Filed under Networking
Learn about the ipconfig and ifconfig network configuration commands
Merging .csv Files in Linux
Filed under Files
Learn about ways to merge CSV files in Linux.
SSH to Local Linux VM With PuTTY
Filed under Security
Step-by-step explanations on setting up networking and SSH access to a local Linux virtual machine.
How to Check if a Shared Library Is Installed
Filed under Administration
Learn how shared libraries work on Linux and to check if they are installed.
How to Delete a User in Linux When the System Says Its Currently Used in a Process
Filed under Administration
Learn how to delete a user and what to do if that doesn’t work as expected.
How to Add Public Key to known_hosts File
Filed under Administration, Security
When we connect to a new host via SSH, we’re prompted to check its identity. We look at how to do this in advance of making an SSH connection in order to check hosts before using them, and to prevent scripts stalling at the prompt.
Create a Tunnel From One Local Port to Another
Filed under Networking
Learn three tools for creating a tunnel from one local port to another in Linux.
Boot Linux in Command Line Mode Instead of GUI
Filed under Administration
Learn how to boot Linux into command-line mode.
How to View CPU Speed on Linux
Filed under Administration
Learn about different methods of checking the processor speed of a Linux system.
Limits on the Number of Linux File Descriptors
Filed under Administration, Files
Learn about the soft and hard limits on the number of open file descriptors.
Difference Between SFTP, SCP and FISH Protocols
Filed under Networking, Security
Learn about the SFTP, SCP, and FISH protocols and explore some of the advantages of using each
Customizing Bash Prompt
Filed under Administration
Examine various ways to customize the Bash shell’s command prompt
Using Homebrew on Linux
Filed under Installation
Learn how to install and use Homebrew on Linux.
Docker Error Bind: Address Already in Use
Filed under Administration
Learn how to resolve the “address already in use” issue in Docker.
Get a List of All IP Addresses on a LAN
Filed under Networking
Learn three approaches to scanning a LAN to get a list of all IP addresses on a LAN.
How to Install Virtualbox Extension Pack on Linux
Filed under Installation
Learn how to install the VirtualBox Extension Pack via the CLI and GUI
Monitoring HTTP Requests on a Network Interface in Real Time
Filed under Networking, Processes
Learn how to use programs to monitor network interfaces in real-time.
Changing the Primary Monitor in X and Wayland
Filed under Administration
Learn about changing the primary monitor in X and Wayland.
The Difference Between SO_REUSEADDR and SO_REUSEPORT
Filed under Networking
A practical comparison between SO_REUSEADDR and SO_REUSEPORT.
Understanding and Configuring Linux Network Interfaces
Filed under Networking
Understand the /etc/network/interfaces configuration file and learn how to configure the network in Linux.
How to Read Corresponding Lines From Two Input Files
Filed under File Viewing
Learn how to read corresponding lines from two input files.
How to Ignore File Properties When Using rsync
Filed under Administration, Files
Learn how to add particular options to rsync to make it ignore specific file properties.
Add a User to Multiple Linux Groups
Filed under Administration
Learn how to add a user to multiple groups with various methods on Linux.
Running Docker Without sudo
Filed under Administration
A quick and practical guide to running Docker without sudo.
Convert Binary Data to Hexadecimal
Filed under File Editing
Explore different ways of converting binary data into hexadecimal format.
Route Specific Subnet to a Particular Interface
Filed under Networking
Explore destination-based and source-based routing.
Using rsync to Transfer Files
Filed under Files, Networking
Explore several examples of using rsync in different scenarios.
Run Part of a Shell Script as a Different User With Runuser
Filed under Administration
Learn how to use the runuser command to execute parts of a script with a different user.
Processing YAML Content With yq
Filed under File Editing
Explore the yq command.
Check if Command Executed Successfully in Linux
Filed under Scripting
See multiple methods to check whether a command executed successfully or not in Linux.
Configure Network Settings Using Network Manager in Linux
Filed under Networking
Explore the basics of Network Manager, while configuring network connections.
Primary and Secondary Groups in Linux
Filed under Administration
Learn about primary and secondary groups in Linux and their differences.
How to Run Multiple Bash Scripts in a Terminal Window
Filed under Scripting
This article explains how to run different scripts sequentially and also how to stop and resume in foreground and background.
Concatenating Videos Using FFmpeg
Filed under File Editing
Learn methods of concatenating videos via FFmpeg.
Throttle Bandwidth on a Linux Network Interface
Filed under Networking
Discover tools to limit the communication speed over a given interface under Linux.
Working With Vim Windows
Filed under File Viewing, Files
Learn how to optimize your Vim workflow by manipulating windows on Linux.
Introduction to Flatpak in Linux
Filed under Administration, Installation
Learn how to work with Flatpak, a package manager with many advantages.
List All Users in a Linux Group
Filed under Administration
Learn a few methods to list all users in a Linux group.
Connecting to a Wireless Network Through Linux CLI
Filed under Networking
Learn how to connect a system to a wireless network using the command line from Linux.
Find Out Linux Distro Through the Command Line
Filed under Administration
Learn ways to detect which Linux distribution a system is running.
Write to a Text File in Bash
Filed under File Editing
Explore various ways to utilize the feature of writing to a file directly from a Bash terminal.
Allowed Characters in Linux Environment Variable Names
Filed under Administration
This guide explains which characters are allowed and recommended in an environment variable on Linux.
List Installed Packages in Linux
Filed under Administration, Installation
Learn how to list installed packages on Debian and Red Hat based Linux systems.
How Do Permissions Apply to Symbolic Links?
Filed under File Permissions, Files
Learn how permissions apply to symbolic links in Linux, and how to modify symbolic link ownership and permissions.
Introduction to Snaps in Linux
Filed under Installation, Processes
Learn about the Snap ecosystem and its main components.
Where Are sudo Incidents Reported?
Filed under Administration
Learn how to find logs of failed sudo attempts.
Comparing Binary Files Under Linux
Filed under Files
Learn a few options to compare binary files in Linux.
How to Completely Remove a Package in Linux
Filed under Administration
Depending on how it was installed, there are a few ways to uninstall a Linux application and its files. We look at how to do this via package managers and manually.
Get the Hostname From an IP Address in Linux
Filed under Networking
Learn how to get the hostname from an IP address in Linux.
How to Use iPerf to Measure Network Performance
Filed under Networking, Processes
Learn how to initiate a server and run iPerf on the client machine to measure network performance and bandwidth.
Count Occurrences of Character per Line/Field on Linux
Filed under File Searching
Explore different ways of counting characters in a line.
Delete All Files in a Directory Except Some
Filed under Files
Explore ways of excluding some files from being deleted.
What Is /dev/sda in Linux?
Filed under Administration, Files
Learn about the /dev/sda file in Linux, and how it relates to a hard drive partition.
Reading a File Line by Line in Bash Script
Filed under File Viewing
Learn how to create a Bash script that reads a text file line by line and displays each line on the screen.
Find Primary IP Address of a Linux Machine
Filed under Networking
Learn how to find the IP address of your primary network interface on Linux.
Syncing Time With Network on Linux
Filed under Administration
This article shows how to configure an NTP server and client on Linux.
Resume Copying Files in Linux
Filed under Files
Copying files between Linux machines can get interrupted. SCP is not usually able to resume a stalled copy. We look at some alternatives for file copying and how to kick start SCP.
Checking if a File Is Executable in Bash
Filed under Files
Learn how to check if the Linux system regards a file as executable.
Generating a Key Pair via GPG
Filed under Security
Learn how to generate cryptographic keys quickly using gpg.
Creating a Simple Select Menu in the Shell Script
Filed under Scripting
Learn how to create a menu with a list of options in Bash.
Differences Between vi and vim Editors
Filed under File Editing
Let’s compare vi and vim editors’ features.
Running a Command That Is Shadowed by an Alias
Filed under Scripting
Learn a few different methods to run commands that have been shadowed by an alias in Linux.
How to Convert Videos to GIFs Using FFmpeg
Filed under Files
Learn how to convert videos to gifs using the command-line FFmpeg tool.
Monitor Resource Usage of a Single Process
Filed under Administration, Processes
Explore ways to view and access the system resource usage in the Linux system.
Restrict Size of the Buffer Cache in Linux
Filed under Administration
Learn about Buffer Cache in Linux and how to restrict its size.
How to Set or Change System Hostname in Linux
Filed under Administration
Learn to manage the system’s hostname.
Using grep While Excluding Binary Files
Filed under File Searching
When searching through our files using grep we may need to exclude binary files. We explore an example of how to do this and how grep works in this case.
Extracting Audio From Video Files Using FFmpeg
Filed under Files
Learn about ways to extract audio from video files using FFmpeg.
Where Do Files Go When the rm Command Is Issued?
Filed under Files, Filesystems
This short article explains what happens to files and directories when we issue the rm command to delete them.
Get the Start Time of a Long-Running Linux Process
Filed under Processes
Learn how to find out the start time of a long-running process in Linux.
Batch Converting Image Formats on Linux
Filed under Files
Explore different ways to batch convert image files from one format to another.
List Only Directories in a Linux Path
Filed under Search
Different commands to list only directories on Linux.
Using FTP Command to Transfer Files
Filed under Networking
Learn how to connect to an FTP server, run several commands, and send files to/from the FTP server.
Why Does htop Show More Processes Than ps
Filed under Processes
Learn how and why the output of htop and ps differs, as well as ways to adjust it.
The Exec Family of Functions
Filed under Processes
Learn what each member of the exec() family of functions does and the differences between them.
The set Command in Linux
Filed under Scripting
Learn about the set command in Linux, its various options and their use cases.
Log the Memory Consumption on Linux
Filed under Administration
Learn about the different ways to monitor memory usage.
How to Compile 32-bit Binary on 64-bit Linux System
Filed under Administration
A practical guide to compiling 32-bit binaries on 64-bit Linux systems.
Script That Counts Files Then Removes the Oldest Ones
Learn how to create a bash script that counts the files in a directory, and if there are more files than a specific number, it removes the oldest ones
Save a File in Vim
Filed under File Editing
Discover how to perform saving and quitting in the vim editor.
Compare Strings in Dot-Separated Version Format
Filed under Scripting
Learn algorithms to compare two strings in dot-separated version format to determine which one is the latest version.
Put an Item at the End of an Alphabetic List in Linux
Filed under Files
Learn different approaches to putting items at the end of an alphabetic list in Linux.
List the Open File Descriptors in the Current Bash Session
Filed under Filesystems, Processes
Learn how to view the open file descriptors of a bash session.
Quickly Create a Large File on a Linux System
Filed under Filesystems
Learn how to create big files (> 100 MB) on a Linux system.
List All Available Commands and Aliases in Linux
Filed under Administration, Scripting
Learn three approaches for listing all the available commands and aliases in Linux.
How to Obtain Basic Information About System and Disk Partitions?
Filed under Administration, Filesystems
Explore ways to provide information about the Linux operating system.
Linux Setuid Programs and Their User IDs
Filed under Administration, Processes
Explore the setuid programs with the ability to do privileged work for ordinary users.
Using the tail Command with Colored Output
Filed under File Viewing
A quick and practical guide to using the tail command with colored output.
Start, Stop, and Restart Nginx on Linux
Filed under Administration
Learn to start, stop and restart the Nginx server in Linux.
Linux Shells Performance: dash vs bash
Filed under Administration, Scripting
Compare the performance of two of the most famous Linux shells: dash and bash.
How to Give Sudo Privileges to a User in Linux
Filed under Administration
Learn how to give full and limited sudo privileges to a local user in Linux.
Safe Use of eval in Bash
Filed under Scripting
Explore the applications of eval.
View the Output of a Running Process in Another Bash Session
Filed under Processes
Sometimes we need to run a process in the background and check in on its progress from another Bash terminal. We look at a number of ways to monitor the output of a process.
Getting MongoDB on Linux to Listen to Remote Connections
Filed under Networking
Learn how to configure the remote access of MongoDB.
Cannot Write to Directory Despite Having Group Permission in Linux
Filed under Administration, Filesystems
Overcome errors when writing to a directory despite having group permissions.
Monitor the Thread Count of a Process on Linux
Filed under Processes
Learn how to check and monitor threads on Linux.
Managing Users and Groups in Linux
Filed under Administration
A practical guide to users and groups management in Linux.
Raise an Error in Bash Script
Filed under Scripting
Explore different ways we can raise an error and exit from the script.
Bash, LAMP and LEMP Stack Professional (remote, part-time)(not open)
Filed under Administration
Looking for a DevOps professional to join the Baeldung team.
Get the Path of a Process in Linux
Filed under Processes
Learn how to find the path of a process in Linux.
Using Iconv to Convert From UTF-16LE to UTF-8
Filed under Files
Learn how to check encoding schemes for a file and use the iconv tool to convert files to another encoding format.
Find All Serial Devices on Linux Without Opening Them
Filed under Administration
Learn how to find all the serial devices on Linux without the need of opening them.
Sort Processes by Network Usage on Linux
Filed under Networking
Learn tools and methods to monitor the network usage per process.
Comparing Words in Two Files in Linux
Filed under File Editing
Learn how to compare two files, word by word, on the Linux command line.
Extract Duration From Video File in Linux
Learn how to extract the duration from video files using different tools.
rsync and Hidden Files
Filed under Scripting
Learn about rsync and how to work with hidden files.
Disassembling Machine Code in Linux
Filed under Administration
Learn how we can read machine code in Linux.
SIGINT Propagation Between Parent and Child Processes
Filed under Processes
Learn about signals in Linux processes and understand why SIGINT is not propagated to child processes.
Managing gnome-terminal From the Command Line
Filed under Administration
Learn to effectively run bash commands using gnome-terminal’s tabs.
What Do Identifiers Mean in Linux?
Filed under Administration, Processes
Learn about different identifiers in Linux.
Get Final URL After a Redirect
Filed under Web
Learn how to get the final URL after a requested URL is redirected using curl and wget.
Which Process Has PID 0 ?
Filed under Processes
Learn how to check running processes in Linux, what the PID 0 is, and the actual process that has PID 0.
Download a Directory and Subdirectories Using wget
Filed under Web
Learn all about the essentials for downloading directories and subdirectories recursively on the web.
Understanding the Linux /proc/id/maps File
Filed under Processes
Learn how to profile the memory usage of a Linux process by reading the output of the /proc/id/maps file.
Find Out What Symbols Are Exported From a DLL File on Linux
Filed under Administration
Learn how to use the winedump command-line tool that is part of the wine tool to show exported symbols of a DLL.
Find Files Lacking Certain Permissions
Filed under Files
While the find command can help us find files by types and permissions they possess, sometimes we need to look for files which are missing certain permissions. We look at how to achieve this in a couple of different ways.
Forward X Over SSH to Run Programs Remotely
Filed under Networking
Learn how to configure X11 port forwarding to run programs remotely over SSH
Detect the Physical Connected State of a Network Connector
Filed under Networking
Learn how to query the status of the Ethernet port of a system
Reading/Parsing Properties File in a Linux Script
Filed under Scripting
Learn how to parse a properties file.
How to Safely Exit from Bash Scripts
Filed under Scripting
Learn how to exit from bash in a safe manner.
Automating Telnet Sessions Using expect
Filed under Networking, Scripting
Learn different ways to automate telnet sessions using the expect command.
How to Foreground a Background Process in Linux
Filed under Processes
Learn how to handle interactive processes and non-interactive processes in Linux.
Delete Selected Text in the Vi Editor
Filed under File Editing
Learn how to delete selected text from a vi editor in Linux using various techniques
Bash: let Statement vs. Assignment
Filed under Scripting
Learn how to use “let” in Bash.
Linux envsubst Command with Examples
Filed under Administration
Learn how to use envsubst to replace all referenced environment variables in a text file with their corresponding values
How to Get the MAC Address of a Network Interface
Filed under Networking
Learn how to find the MAC address of a network interface in Linux.
Inserting a Newline in a Variable in Bash
Filed under Scripting
Learn how to insert newlines to a variable in bash.
Iterating Over Each Line of ls -l Output
Filed under Scripting
Learn about the different ways we can iterate over the output of the ls command.
Division with Variables in a Linux Shell
Filed under Scripting
Learn multiple ways of performing division on integers and floating-point numbers in Bash
Tainted Linux Kernel
Filed under Security
A quick and practical explanation of tainted Linux kernels.
Automatically Capture Output of the Last Command Into a Variable Using Bash
Filed under Scripting
Let’s look at a few techniques for storing command output in variables in bash.
Request a File Without Saving in Linux
Filed under Web
Explore different approaches to request a file in Linux without saving it locally.
Redirect the Output of systemd Service to a File
Filed under Administration
Learn how to redirect the output of a systemd service to a given file with a simple example
What Is a Sysroot?
Filed under Scripting
Learn about sysroot and ways of tweaking it when calling the compiler.
Downloading Content Using wget Without Following Redirects
Learn how to prevent wget from following redirects when downloading content in Linux.
Search Contents of Multiple PDF Files
Filed under File Searching
In this tutorial, we’ll look at some specialized commands that can be used to search for strings in PDF files.
Using the passwd Command from Within a Shell Script
Filed under Administration, Scripting
Learn multiple methods to set a user’s password non-interactively inside a shell script in Linux.
Concatenate Files With a Separator
Filed under Files
Learn about the different ways we can concatenate files.
Checking if a Variable Is a Number in Bash
Filed under Scripting
Learn how to check if a variable is a number in Bash.
Link All Files from One Directory to Another in Linux
Filed under Files
Learn how to link all files from one directory to another in Linux using various techniques
Remove Jenkins Completely From Linux
Filed under Installation
Learn different ways to uninstall Jenkins from Linux.
Find Open Ports in Linux
Filed under Networking
Learn about Linux open ports and their importance in minimizing security threats.
Getting a Process’ Child Processes
Filed under Processes
Learn several ways of getting the child processes of a process using pgrep, pstree, ps, and the proc file system
Counting Hard Links Towards File Size With the du Command
Filed under Filesystems
We can use the du command to find the size of files and directories, but this behaves unexpectedly when we have hard links. We look at how to resolve this issue and why it behaves this way.
Looking for a Linux Technical Editor for Baeldung (not open)
Filed under Administration
Linux Technical Editor role
Run a Script With a Different Working Directory
Filed under Scripting
Learn how we can run a script or a program from a different directory in a shell script
Renaming All Folders and Files to Lowercase in Linux
Filed under File Editing, Files
Learn how to rename all folders and files to lowercase in Linux.
Synchronize Linux Directories in Both Directions
Filed under Files
A quick and practical guide to synchronizing directories in Linux.
cURL Command Without Using Cache
Filed under Web
A quick and practical guide to using curl without cache.
Flow Control in Bash Without Goto
Filed under Scripting
Bash provides several ways to manage flow control in a script, but it does not natively provide a goto statement. We look at how to simulate goto and how to use the other built in flow control techniques
How Do Linux Binary Installers (.bin, .sh) Work?
Filed under Installation
Learn how can we install an entire software package that has hundreds of files.
Setting the Vim Background Colors
Filed under Administration, Installation
Learn how to set the vim background colors with the help of the colorscheme and highlight commands
Use the Lines of a File as Arguments of a Linux Command
Filed under Scripting
Learn how to use command arguments from a file.
Merge PDF Files in Bash
Filed under File Editing
Learn how to merge PDFs from the Linux command line
Configure a Systemd Service to Restart Periodically
Filed under Administration, Scripting
Learn multiple ways to periodically restart a systemd service in Linux.
Assigning a Port Mapping to a Running Docker Container
Filed under Networking
When running a Docker container we can set a port mapping to allow communication through the host. This usually is fixed for the lifetime of the container. We explore some strategies for changing the port mapping for an existing container.
Linux Processes Guide
A series of tutorials on managing Linux processes.
Find All Storage Devices Attached to a Linux Machine
Filed under Administration, Filesystems
Explore a few ways to list the storage devices attached to a Linux system.
Pasting Text in Vim
Filed under File Editing
Learn the different essential registers in Vim and how we can access these registers to yank and paste text
Search for a Multi-Line Pattern in a File in Linux
Filed under File Searching
Learn how to search for text that matches a multi-line pattern in a file using grep and awk
Maximum Number of Threads per Process in Linux
Filed under Processes
Learn why there’s a limit on the number of threads per process in Linux, and how to find out what that limit is.
How to Create a Simple Debian Package
Filed under Installation
A quick and practical guide to creating simple Debian packages.
Interprocess Communication With Unix Sockets
Filed under Networking
Learn what Unix Sockets are and how to create and interact with them using common Linux utilities.
Create a Directory and Set Permissions in a Single Command
Filed under File Permissions
Learn how to create a directory and set permissions in a single command with the help of the mkdir and install commands.
Read Values Into a Shell Variable From a Pipe
Filed under Scripting
Learn different methods to dynamically assign values to variables
Differences Between PID, TID and PPID in Linux
Filed under Processes
Learn the differences between Process Identifier, Thread Identifier, and Parent Process Identifier in Linux, and also how to retrieve this information using various approaches.
Linux tar Command – Archiving Files Without the Directory Structure
Filed under File Compression, Files
Have a look at several ways of creating an archive file without keeping the directory structure.
Checking a File’s Age and Modification Time
Filed under Filesystems
Learn various ways to check the age or modification time of a file
Check What Killed a Linux Process
Filed under Processes
Learn what killed a Linux process and determine why it happened
Configuration Files in Linux
Filed under Administration, Files
Learn how to configure Linux without using any UIs.
The lost+found Directory in Linux and UNIX
Filed under Filesystems
Learn about the lost+found directory and why it exists on Linux filesystems
Use of Dash “-” in Command-Line Parameters
Filed under Scripting
Learn the meaning of using “-” in the Linux command-line and how it is interpreted by the most common commands
Include Files in a Bash Shell Script With source Command
Filed under Scripting
A quick and practical guide to the source command.
Restrict Commands for SSH Users
Learn how to restrict the commands a logged-in user can run in SSH session.
Linux Administration Guide
Filed under Administration, Series
A collection of guides that show useful administration operations on Linux.
Automating User Account Creation with Password in Shell
Filed under Administration
Learn how to automate the process of creating a user
Check if an SMTP Server Is Working From the Linux Terminal
Filed under Administration
Learn how to check if an SMTP server is running ok via the terminal.
Empty the Buffer and Cache in Linux
Filed under Administration
Learn about the buffer and cache in Linux and how to empty them.
Linux Find Command With Regular Expressions
Filed under File Searching
In this tutorial, we’ll talk about the use of the command find with regular expressions (regex).
The PATH Variable for Cron Jobs
Filed under Processes
Learn how to pass the PATH environmental variable to a scheduled process.
Change the Direction of Incremental Searching in a Shell
Filed under Search
Understand the searching functionalities that GNU Bash offers and also learn of a conflicting key sequence (C-s) used by both the terminal and the shell.
Shell Script for Logging Into a SSH Server
Filed under Administration
A quick and practical guide to accessing and executing the commands on a remote SSH machine.
How to Remove Non UTF-8 Characters From a File
Filed under Scripting
Learn how to detect and remove non-UTF-8 characters from a file.
Pipe Output to Bash Function
Filed under Scripting
Learn how to redirect output to another function in Bash.
What Is Double Dot (..) And Single Dot (.) In Linux?
Filed under Filesystems
Learn the difference between a double (..) and a single dot (.) in Linux.
Running a Shell Script on a Remote Machine Through SSH
Filed under Scripting
Learn how to execute scripts over SSH connections.
Diff a Directory for Only Files of a Specific Type
Filed under Files
A quick and practical guide to listing different specific file types between two directories.
The “Oldconfig” Target in the Linux Kernel Makefile
Filed under Administration, Installation
In this tutorial, we’ll configure the Linux kernel and learn about its oldconfig Makefile target.
How to Monitor Disk IO in a Linux System
Filed under Administration, Processes
In this tutorial, we’ll discuss how to monitor disk I/O activity in the Linux system.
Limit on File Name Length in Bash
Filed under Files
Learn how to find the limit on the length of filenames in Linux.
Fixing the “Too many open files” Error in Linux
Filed under Administration, Files
Learn about the Linux system limits placed on file descriptors in the context of understanding and resolving the “Too many open files” error.
Find the Process That Is Using a File in Linux
Filed under Processes
Learn to find a process that is using a file in Linux.
GUI Under Linux
Filed under Administration
Learn the graphics stack used in Linux-based operating systems and about some of the high-level GUI toolkits
How Are Linux PIDs Generated?
Filed under Processes
Learned about process IDs in Linux – how they are generated, how high they can go, and what happens when the limit is hit.
Solving DNS Resolution Issues
Filed under Networking
A quick and practical guide to solving hostname resolution issues.
Linux in Virtual Machine vs. on Native Hardware
Filed under Administration
Learn the differences between running Linux on a virtual machine and bare metal
Peak Memory Usage of a Linux Process
Filed under Processes
Learn a few tips and tricks using some well-known Linux commands to determine the peak memory usage of a process.
A Guide to POSIX
Filed under Administration
Learn the history behind POSIX, how it evolved, and some of the important POSIX standards
Count the Number of Directories in a Specific Directory
Filed under Files
Learn a few different Linux commands for counting the number of directories contained inside a specific directory or directory tree.
Change Permissions for a Folder and All Its Content in Linux
Filed under File Permissions
Learn to change permissions for a folder and all its content in Linux.
Create Linux Folder Path and File in One Command
Filed under Files
A practical guide to creating a folder and file paths in one command in Linux systems.
Tcpdump: Localhost to Localhost
Filed under Networking
Learn why the localhost is the default name of our system and how it helps test applications through the loopback network interface.
Understanding the /dev Directory in Linux
Filed under Administration, Filesystems
Explore the /dev directory and the contents that fall under it.
Linux Commands to Translate Domain Name to IP
Filed under Networking
In this tutorial, we’ll discuss how to resolve or translate a domain name to an IP address. For this purpose, we’ll be using the following commands: ping, host, nslookup, dig, and nmap.
Displaying Request Headers With curl
Filed under Web
A quick and practical guide to displaying request headers using curl.
Finding Files by Name and Extension
Filed under Files
Learn a few methods we can use to find files by name or extensions inside the Linux terminal using built-in utilities
Comparing Two Files in Linux
Filed under File Viewing, Files
Learn how to compare two text files in Linux, and also find out how you can narrow down the comparison to find only addition/removal differences between them.
How to Run a Script at a Certain Time on Linux
Filed under Administration
Learn how to schedule script execution in Linux.
How to Encrypt a Partition in Linux
Filed under Filesystems
Learned how we could encrypt our storage drives with Cryptsetup and VeraCrypt
Get Process ID of Linux Foreground and Background Processes
Filed under Processes
Learn to find the process ID of Linux foreground and background processes.
Removing the Last Character of a File
Filed under File Editing, Files, Scripting
Learn multiple command-line techniques for removing the last character in a file.
Find the Graphics Card Version from the Command Line
Filed under Administration
Learn several methods for finding the graphics card version for AMD, Nvidia, and Intel
Solving the “bad ELF interpreter” Error
Filed under Administration
Understand the “bad ELF interpreter” error in Linux and how to solve it.
Display Modified Date When Using the find Command
Filed under Search
Learn different ways to include the modified dates of files in the search result of the find command
Sorting a File in-Place in the Linux Terminal
Filed under Files
Learn how to sort a file in-place from the Linux console using the sort command.
Get Overall CPU Usage on Linux
Filed under Administration
A quick and practical guide to monitoring CPU usage on Linux.
Deploying Long Running Applications in Linux
Filed under Administration
Learn to deploy long running applications in Linux.
Concatenation of Multiple Gzip Files
Filed under File Editing, Files
Learn some of the simple and useful and tools we can use to concatenate multiple Gzip files into one from the Linux command line
How to Base64 Encode an Image in Linux
Filed under Files
Learn how to convert an image to Base64 in Linux
“No such file or directory” Error When Executing a Binary
Filed under Administration
Learn what could be causing the “No such file or directory” error when we try to execute a binary of a program.
Display the First “n” Characters of a File in Linux
Filed under File Viewing, Files
Learn how to use a variety of tools to print the first specified number of characters from a file
Replacing Spaces from Filenames in Linux
Filed under File Editing, Files
In this article, we’ll discuss some of the plausible ways to rename files by replacing space(s) from the filename.
Determine if a Process Runs Inside a Container
Filed under Processes
Learn how to determine if a process is running inside a Linux container.
Determine the Current Shell in Linux
Filed under Administration
Learn multiple ways to find out the current, running shell in Linux.
Find Out Image Dimensions From the Linux Terminal
Filed under File Viewing, Files
Learn to use several tools to quickly find out and display the dimensions of an image file from the Linux command line
Solving the “Too many levels of symbolic links” Error
Filed under Filesystems
Learn two ways to solve the “Too many levels of symbolic links” error
How to Create an Alias in Linux
Filed under Scripting
Learn how to work with aliases in Linux.
List Environment Variables in Linux
Filed under Scripting
Learn how to use the env, printenv, declare, or set command to list all variables in the system
Simulating the Enter Keypress in Bash Scripts
Filed under Scripting
Look at the methods we can use to bypass the confirmation prompts triggered by shell scripts and programs
Bash – Using History Efficiently
Filed under Scripting
Learn how to use Bash history to work more efficiently.
Run vi Editor Inside Docker Container
Filed under File Editing, Files
Learn how to use the vi command inside a Docker container.
Cutting Videos Based on Start and End Time using FFmpeg
Filed under File Editing
Learn a few approaches to clipping videos using FFmpeg, which is a suite of tools provided for video manipulations
View Images from the Terminal in Linux
Filed under File Viewing
Learn about different tools we can use to open images from the Linux command line
Killing Processes by Given Partial Names in Linux
Filed under Processes
A guide to killing Linux processes using their partial names.
How To Find Only Text Files in a Directory in Linux
Filed under File Searching, Files
A quick and practical guide to searching for text files in a particular directory.
Count All the Lines of Code in Directory
Filed under File Searching
Learn how to count all the lines of code in a directory in Linux.
Using printf and echo in Linux
Filed under Scripting
Explore the usage of echo and printf commands in Linux and Unix-based systems.
Escape Double Quote In Grep
Filed under File Searching, Files
A quick and practical guide to escaping a double quote in grep.
How to Create a CPU Spike in Bash
Filed under Administration, Scripting
Learn multiple ways to monitor CPU usage and create a CPU spike in bash.
Get the Path of a Linux Command
Filed under Scripting
Learn how to get the path of a Linux command.
How to Find Which Process Was Killed by Linux OOM Killer
Filed under Administration, Processes
A quick and practical guide to debugging Linux OOM errors.
Downloading a Tarball from GitHub
Filed under Files
Learn how to download a GitHub repository tarball in Linux.
What’s the Difference Between sh and Bash?
Filed under Administration
Explore the current and installed shells in the Linux system.
Command Line Clipboard Access and Alternatives
Filed under Administration
A quick and practical guide on how to use clipboard from command line.
Linux Process vs. Thread
Filed under Processes
Explore the details of the process and thread in the context of Linux
Find Out the Total Physical Memory (RAM) on Linux
Filed under Administration
In this tutorial, we’re going to see different tools that we can use to check for total physical memory in Linux.
The Most Common Flags in /proc/cpuinfo with Examples
Filed under Administration
A practical overview of most common /proc/cpuinfo flags.
SSH Tunneling and Proxying
Filed under Administration, Networking, Security
Learn about ssh’s proxying and tunneling capabilities
Delete Empty Files and Directories in Linux
Filed under File Editing
A guide to deleting empty files and directories on Linux.
What are .a and .so Files?
Filed under Administration, Installation
Learn about archive libraries and shared object libraries
Understanding Stale File Handles in Linux
Filed under Filesystems
Explore stale file handles in Linux.
Move All Files Except One
Filed under Files
Learn to move all files except one in Linux.
Count Occurrences of a Char in a Text File in Linux
Filed under File Searching
Learn about different approaches in Linux to find the character count in a text file.
How to Find All Links for a Specific File
Filed under Administration, Filesystems
In this tutorial, we’ll have a look at how to find all of the soft links for a specific file.
Create Bash Alias That Accepts Parameters
Filed under Scripting
In this tutorial, we’ll explain the steps to create an alias and learn how to pass parameters to it in the Bash shell.
Command Chaining: Inline or Already Running Processes
Filed under Administration, Processes
In this brief tutorial, we’ll see some ways for serializing commands using bash in Linux. Even when some of them are already running.
Count Lines in a File in Bash
Filed under Files
Learn the most common ways of counting the number of lines of a specified file using Bash
HTTPS Connection Using Curl
Filed under Security
Learn to make an HTTPS connection using curl.
Kill All Members of a Process Group
Filed under Administration, Processes
In this tutorial, we’ll take a look at process management using process groups. Also, how to kill all processes that belong to a process group.
Capture the SSL Handshake with tcpdump
Learn how to capture SSL handshake messages over the network.
Kill a Process Running on a Specific Port in Linux
Learn to kill a Linux process running on a specific port.
Display Specific Columns From a File in Linux
Filed under Scripting
Learn how to display specific columns from a file using Linux scripting.
How To Compare Two Directories on Linux
Filed under File Searching, File Viewing
Explore several ways of how directories can be compared on Linux.
Exclude Directories With grep
Filed under File Searching, Files
Learn three practical methods to exclude directories while recurring through the directory hierarchy using grep
List the Size of Each File and Directory, and Sort by Size in Linux
Filed under File Searching, Files
As Linux users, we frequently interact with the file systems. One of the common tasks is to list the files and sort them according to their size.
Find and Convert Files Ending With CRLF
Filed under Files
Learn to find and convert files ending with CRLF.
Run a Java Application as a Service on Linux
Filed under Administration
Learn how to run a Java Application as a service on Linux.
Negate an if Condition in a Bash Script
Filed under Scripting
Learn how to use the negation of condition statement in bash programming.
Find the IP Address of the Client in an SSH Session
Filed under Networking
Learn to find the IP address of the client in an SSH session.
Difference Between .bashrc, .bash-profile, and .profile
Filed under Administration, Scripting
Learn about the startup files .bashrc, .bash-profile, and .profile and their differences.
Redirecting the Output of an Already Running Process
Filed under Processes
Let’s learn different ways to redirect or copy the output of an already running process
Pass the Output of a Command as an Argument for Another
Filed under Scripting
Learn how to pass the output of a command as an argument for another in Linux.
Ensure Only One Instance of a Bash Script Is Running
Filed under Scripting
Learn different ways of ensuring only one instance of a bash script is running
Check if a String Contains a Substring in Linux
Filed under Scripting
Learn how to check if a string contains a substring in Linux.
Running Multi-Line Shell Code at Once From Single Prompt
Filed under Scripting
There are many ways to run multi-line shell commands in Linux at once. Let’s explore and compare them.
Guide to Generate Random Numbers in Linux
Filed under Scripting
Learn how to generate random numbers in a Linux environment.
Search Within Specific File Types Using grep
Filed under File Searching, Files, Search
Learn how to search within specific files on Linux.
Read the Source Code of Shell Commands
Filed under Processes
Learn how to find the source code for the common Linux tools.
Anonymous and Named Pipes in Linux
Filed under Processes
Learn about anonymous and named pipes in Linux.
Check if Directory Is Mounted in Bash
Filed under Filesystems
A quick and practical Bash guide to checking if a directory is mounted.
Get the Contents of a Web Page in a Shell Variable
Filed under Scripting
Sometime we may need to process the content of a web page in our scripts. Let’s see how we can download a web page to a shell variable for further processing.
Find the Current Working Directory of a Running Process
Filed under Processes
Learn how to find the current working directory of a running process.
Run Cron Job Only If It Isn’t Already Running
Filed under Processes
When scheduling long-running jobs with cron, we may need to implement some sort of mutex functionality to prevent two instances running at the same time. Here we discover a few things we can add to our scripts to achieve this.
Kernel Stack and User Space Stack
Filed under Processes
A quick and practical explanation of Linux stack spaces.
How to Use the mysql Client and Related Utilities
Filed under Administration, Installation
Learn the purpose of the most used MySQL utilities, along with some examples
How to List All Connected SSH Sessions
Filed under Networking, Security
Have a look at how to list active SSH sessions in Linux.
Jobs and Job Control in Bash Shell
Filed under Processes
The bash shell runs commands as jobs. These can be paused, resumed and killed from the shell, with paused jobs resulting in warnings when we logout. We investigate how to take control of our jobs.
How to Record Linux Terminal Sessions
Filed under Administration
Learn how to record terminal sessions in Linux using script.
How to Measure Separate CPU Core Usage for a Process
Filed under Processes
Learn a few options we can use to gather per-core CPU usage of a process
How to Insert a Line at Specific Line Number
Filed under File Editing, Files
Learn how to insert text at a specific line of a file using Linux commands.
How to Force Detach Screen From Another SSH Session
Filed under Administration
Have a look at how to detach and reattach to another screen session.
Limiting Process Resource Consumption in Unix
Filed under Processes
Linux provides several ways to constrain the resources used by a process. We look at a few techniques for controlling the CPU, RAM and disk space that a process can access.
Remove Line Endings From a File
Filed under File Editing, Files
Learn how to remove line endings from files in Linux.
Freeing up a TCP/IP Port
Filed under Networking
Learn several ways to free up a TCP/IP port.
Here Document and Here String
Filed under Scripting
Learn the syntax for heredoc and herestring.
Partitioning Disks in Linux
Filed under Filesystems
Learn different ways of partitioning disks in Linux.
Running Multiple Commands in the Background
Filed under Scripting
Learn how to run multiple commands in the background using the Linux shell.
How to Use the Paste Command
Filed under Scripting
The paste command is a simple yet powerful tool. Let’s explore how we can use it.
Writing Text to File Using Linux Cat Command
Filed under Scripting
Learn how to write text into a file using the Linux cat command.
Keeping SSH Session Alive
Filed under Networking
Learn how to keep SSH sessions alive in Linux.
How to Change the Default Home Directory of a User
Filed under Administration
Let’s see how to change the default home directory of a user on Linux.
How to Append the Contents of Multiple Files Into One File
Filed under Files
Have a look at how to append the contents of multiple files into one in Linux
What Is the LD_PRELOAD Trick?
Filed under Processes
Are you curious about what the “LD_PRELOAD trick” is and what you can use it for? Just keep reading.
Conditional Expressions in Shell Script
Filed under Scripting
Learn how to use conditional expressions in Shell
Repeat a Linux Command at a Given Interval
Filed under Scripting
Learn how to repeat a Linux command at a given interval.
Recursively List All Files in a Directory Including Symlinks
Filed under Files
Do we need to recursively list directories that contain symlinks? Let’s find out how in this tutorial.
Defining a Bash Variable With or Without ‘export’
Filed under Scripting
Learn about the differences between defining a bash variable with export and without export.
What Does a Double-Dash in Shell Commands Mean?
Filed under Scripting
Certain characters cause problems when we use them in command arguments. Let's see how double-dash could be the solution.
Tracking Down Where Disk Space Has Gone on Linux
Filed under Administration, Filesystems
Learn several ways of finding disk consumption points so that we can free up disk space
Introduction to iptables
Filed under Networking
Learn about iptables which is a user-space firewall that filters connections based on user-defined rules
Generating an SHA-256 Hash From the Command Line
Filed under Files
When we need to generate file hashes, SHA-256 is often one of the best choices. Let’s see how this works in Linux using the command line.
Why Do We Use su – and Not Just su?
Filed under Administration
Explore the main differences between su and su – commands in Linux.
Configuring and Managing Core Dumps in Linux
Filed under Administration
Learn how to manage and configure core dumps. We’ll investigate kernel.core_pattern and coredumpctl.
Connecting from Docker Containers to Resources in the Host
Filed under Networking
We often need to connect from our Docker containers to applications in the host. This is not the default, so let’s see what we need to do to make it possible.
How to End Processes With kill, pkill, and killall
Filed under Processes
Learn the benefits of each command, along with examples where each one excels
Combine and Execute Multiple Linux Commands
Filed under Administration
Learn different ways to combine and execute multiple Linux commands efficiently.
Starting a Shell in the Alpine Docker Container
Filed under Administration
Learn how to start a shell in a new or running Alpine Docker container.
Commands to Get the Min, Max, Median, and Mean of a Dataset
Filed under Scripting
Learn how to calculate the min, max, mean, and median values of a dataset using Linux commands.
Execute Bash Script Directly From a URL
Learn how to execute a shell script directly from a URL using curl and wget.
The Use of Swap Space in Modern Linux Systems
Filed under Installation
Swap space is useful even when a Linux system has more than enough RAM for all its tasks. Here we dig deeper into swap space and why using it can be preferable to keeping everything in RAM for most installations.
How to Use Multiple Databases with docker-compose
Filed under Administration
Learn how to run our services with docker-compose and MariaDB to access multiple databases
Locale Environment Variables in Linux
Filed under Administration
Learn about Linux locale environment variables and how they affect the languages and character sets used to display command output.
When to Use xargs
Filed under Scripting
xargs
is very useful when we need to build command pipelines that pass the output of one command, as arguments for another.
Display System Information in the CLI with Neofetch
Filed under Administration
Learn how to display system information without worrying about the underlying operating system using Neofetch.
Linux comm Command
Learn how to easily compare two files in Linux using the comm command.
The Linux join Command
Filed under Scripting
Learn how to join the contents of two files using the join command.
Using sed to Replace a Multi-Line String
Filed under File Editing, Files, Scripting
Learn a few advanced techniques for using sed to search and replace text that contains multiple lines
How to Delete a File Whose Name Begins With “-“
Filed under Files
Learn how to delete a file whose name begins with "-" using the find and rm commands.
Free Command in Linux
Filed under Administration
Learn how to monitor memory usage in Linux using the free command.
Using xz Compression in Linux
Filed under File Compression, Files
Learn about using xz for compressing and decompressing files from the Linux command line
Difference between /dev/console, /dev/tty, and /dev/tty0
Filed under Files
Learn the key differences between /dev/console, /dev/tty, and /dev/tty0 in Linux.
Bash Special Variables
Filed under Scripting
Learn how to use Bash special built-in variables to control the execution flow of a script
How the Docker Build Cache Works and When Not to Use It
Filed under Processes
Learn about the docker build cache and how to control it.
Empty the Contents of a File
Filed under File Editing, Files
Learn several ways to empty the content of a file.
Directory Navigation Using the pushd and popd Commands
Learn how to efficiently navigate directories with the pushd and popd commands.
Read Random Line From a File in Linux
We’ll look at different strategies to randomly choose a line of text from a file.
Process Memory Management in Linux
Filed under Processes
Learn how we can use the different memory measurements of Linux processes.
Linux source Command
Filed under Scripting
A quick and practical guide to Linux’s source command.
Using docker-compose With Private Repositories
Filed under Processes
Learn how docker-compose can access private repositories using the docker login command.
Introduction to Bash Array
Filed under Scripting
Learn about associative and index-based Bash arrays
Delete Lines in a Text File That Contain a Specific String
Filed under File Editing, File Searching, Files, Search
Learn how to use grep, awk, and sed to delete lines containing a specific string from text files in Linux.
How to Reverse the Order of Lines in a File in Linux
Filed under File Editing, Files, Scripting
There are a few ways we can reverse the output of a file, or command. Here we look at some of the common methods and compare their performance.
How Do so (Shared Object) Filenames Work?
Filed under Files, Filesystems
Explore how so (shared-object) files are organized in a Linux filesystem.
Using gzip and gunzip in Linux
Filed under File Compression, Files
Learn how to use gzip and gunzip for compressing and uncompressing files from the Linux command line
How to Determine the Number of RAM Slots in Use
Filed under Administration
Learn how to use dmidecode and lshw to retrieve the RAM configuration of our system
Linux ping Command
Filed under Scripting
A quick and practical guide to the Linux ping command.
How to Kill a Background Process in Linux
Filed under Processes
Learn how to use pkill, killall, and other tools for killing processes in Linux.
Introduction to the tee Command
Learn how to use the tee command in Linux
Remove the First Characters of a Line
Filed under Scripting
Learn several ways to remove the first characters of line in Linux.
Guide to the chgrp Command
Filed under File Permissions, Files
Learn how to use the chgrp command in Linux.
ifconfig Command in Linux
Filed under Networking
Linux provides the ifconfig tool to help us review and modify the settings and state of network interfaces. We explore some common use cases.
How to Count the Number of Files in Linux
Filed under Files
Learn how to count the number of files in a directory on Linux
Linux man Command
Filed under Administration, Scripting
A quick and practical guide to the “man” command in Linux.
Preventing Bash Fork Bombs
Filed under Security
Learn what Fork Bombs are and how to prevent them.
Guide to the vi Editor
Filed under File Editing, Files
Take a deep dive into the vi editor
How to Use the cd Command in Bash Scripts
Filed under Scripting
Learn how to use the cd command in Linux Bash Scripts.
Print Linux Directory Structure as a Tree
Filed under Files
Learn different ways to display a directory structure’s contents recursively in Linux
The uniq Command in Linux
Filed under Files
Learn how to operate the uniq endpoint in Linux.
Linux Files Series
Explore Linux Files through various articles with examples
Installing the AWS CLI on Linux
Filed under Installation
The AWS CLI allows us to control our AWS account from the command line. Here we look at how easy it is to install on our Linux system.
Linux Scripting Series
Explore Linux Scripting through various articles with examples
Managing Processes in Linux
Filed under Processes
A quick and practical guide to managing processes in Linux.
diff Command in Linux
Filed under Files
Learn about the diff command in Linux
The traceroute Command in LINUX
Filed under Networking
Learn the path network packages take using the traceroute command.
How to Change Terminal Output Color in Linux?
Filed under Scripting
A quick and practical guide to setting terminal output color in Linux.
Linux tar Command
Filed under File Compression, Files
Learn how to use the tar utility to create, list, and extract archives
Transfer Files Between Linux Machines Over SSH
Filed under Files
We can securely copy data between machines using scp and rsync, which operate over a secure connection. We explore the tools’ similarities and differences.
Using Shebang #! in Linux Scripts
Filed under Scripting
A quick and practical guide to using shebangs.
Guide to the sed Stream Editor
Take a dive into the sed stream editor.
Soft-Delete Files from the Terminal
Filed under Files
Learn how to soft-delete (trash) files in Linux systems.
How to Find and Replace Text in a File
Filed under File Editing, Files
Learn how to find and replace text in a file using the Linux command line.
Linux ps Command
Filed under Processes
Learn the basics of the Linux ps command including filtering and customizing the output
Recursively Deleting Files With a Specific Extension
Filed under Files
Linux allows us to clean up files by deleting recursively from the current directory. Here we look at the commands and how to use them safely.
Working with the AWS CLI for EC2
Filed under Scripting
Learn how to manage ec2 instances using the AWS CLI.
Guide to the AWK Programming Language
Filed under Scripting
Take a deep dive into the awk programming language
Finding Duplicate Files in Unix
Filed under Files
Learn to find duplicate files in Unix.
Bash Functions in Linux
Filed under Scripting
Learn how to define and use Bash functions
Guide to the Linux read Command
Filed under Scripting
Learn how to use the Linux read command to handle user input from the command line.
How to Use Command Line Arguments in a Bash Script
Filed under Scripting
Learn how to use command-line arguments inside the bash script
Working with the AWS S3 CLI in Linux
Filed under Web
Learn how to work with the AWS S3 CLI in Linux.
Modify Files in Linux using vi, nano or emacs
Filed under File Editing, Files
Explore file editors we can use to modify or create a new file in Linux.
Guide to Monitoring Disk Usage on Linux
Filed under Filesystems
Learn how to monitor and explore the disk usage in Linux.
Differences Between more, less, and most in Linux
Filed under File Viewing, Files
Linux provides several tools for scrolling through the contents of text files. We compare their capabilities and demonstrate the most common ways to use them.
How to Pass Command Line Arguments to Bash Script
Filed under Scripting
Explore different ways of passing command-line arguments to the bash script during run time
Difference Between sort | uniq and sort -u
Learn the differences between the Linux sort | uniq and sort -u commands.
Linux Commands – top
Filed under Processes
Learn how to use top command in Linux.
Setting Permissions with chown and chmod
Filed under File Permissions, Files, Security
Linux file permissions are determined by who owns the file and the visibility of that file to various users. Discover chmod and chown for configuring this.
Guide to Stream Redirections in Linux
Filed under Scripting
Learn about stream redirections in Linux and how to accomplish them.
Splitting Files in Unix Systems
Filed under File Editing, Files
Learn several ways to split files in Unix Systems.
Linux Commands Comparison: curl vs wget
Filed under Web
We can download and upload with both the linux curl and wget tools. In this tutorial we look at which tool is best suited for each type of task.
Linux Commands – Parallel Downloading with wget
Filed under Web
Explore different ways in which we can download multiple files in parallel using wget.
Copying in Linux with Visual Progress
Filed under Files
See how to copy files/folders in Linux, with full progress feedback.
Manipulating Strings in Linux with tr
Filed under Files
A quick and practical overview of trimming strings after sequence occurrences on Linux.
Copy a File to Multiple Directories on Linux
Filed under Files
Explore how to copy a file to multiple directories for both predefined and wildcard inputs on Linux.
Adding a Path to the Linux PATH Variable
Filed under Installation
Learn several ways to add a path to the Linux path variable.