When files and system utilities are used by a Linux system, they're temporarily stored in random access memory (RAM), which makes them much quicker to access. This is a good thing, since frequently accessed information can be quickly recalled, which ultimately makes your system perform faster.

The operating system determines how long to keep files cached in memory, but Linux also gives the user the ability to clear the cache manually. You normally will never need to do this, although there are edge situations where it can come in handy.

In this guide, we'll show you how to clear the memory cache on Linux by clearing PageCache, dentries, and inodes from the command line.

In this tutorial you will learn:
  • What is PageCache, dentry, and inode cache?
  • How to clear cache
Clearing memory cache and using free command to show before and after result
Clearing memory cache and using free command to show before and after result

If you have a folder that's full of files and need to send it to someone or otherwise store it efficiently, archiving the folder into a .zip file is a good way to do it. Of course, on Linux systems, it's probably more common to come across compressed tar files, but zip archives are still ubiquitous and a perfectly viable choice.

In this guide, we'll show you how to compress (or "zip") a folder on all major Linux distributions. We'll be covering the steps for doing so on the command line as well as from the GNOME and KDE graphical desktop environments. Choose whichever method you find most appropriate when creating your zip file.

In this tutorial you will learn:
  • How to zip a folder from Linux command line
  • How to zip a folder from GNOME GUI
  • How to zip a folder from KDE GUI
Zip folder in Linux
Zip folder in Linux

Node.js is a JavaScript runtime environment that is used for hosting websites. It offers users the ability to write websites in JavaScript whose code executes on the server instead of a client's browser.

To host a website with Node.js on a Linux system, you need to download and configure the Node.js software. Node.js is available for installation on any major Linux distro, although the commands to install it may differ. Most users will also wish to install npm, the package manager for Node.js and JavaScript, when they install Node.js.

In this guide, we'll show you how to install Node.js from the command line on various Linux distributions so you can get started hosting your JavaScript based website. We'll also include instructions for installing npm.

In this tutorial you will learn:
  • How to install Node.js on major Linux distros
Checking the Node.js version and help menu on Linux
Checking the Node.js version and help menu on Linux

In the article about checking an hard drive health using smartctl we talked about the smartmontools package, and we saw that it provides two components: a command line utility (smartctl) and a daemon, smartd, we can use to schedule operations. We focused on the usage of the former and we saw what are the S.M.A.R.T tests we can run and how to actually run them.

This time, we will talk about the smartd daemon: we will see how to schedule tests and how to configure it to so to be notified via email when an error is found on a storage device. In the course of the article I will assume the smartmontools package to be already installed. Please refer to the aforementioned article for installation instructions.

In this tutorial you will learn:

  • How to configure the smartd daemon
  • What is the meaning of some of the more used directives that can be used with smartd
  • How to configure msmtp to forward email to gmail smtp server for messages to be delivered externally
  • How to test the configuration
How to configure smartd and be notified of hard disk problems via email
How to configure smartd and be notified of hard disk problems via email

There are many reasons why you may want to stress test the CPU on your Linux system. You may want to see how your operating system and hardware perform when you are at full CPU utilization in order to spot software bugs or hardware failures. Alternatively, you may want to generate a lot of heat fast to troubleshoot a temperature-related issue with your machine; maximizing the CPU utilization will do that. Whatever the reason, there is a fast and easy way to accomplish that goal.

In this tutorial you will learn:

  • How to perform stress tests on the CPU using the yes stress test
  • How to perform stress tests on the CPU using the stress command
  • How to perform stress tests on the CPU using the s-tui command

The smartmontools package is generally available in the default repositories of all the major Linux distributions. It contains two utilities useful to check the status of storage with S.M.A.R.T support (Self Monitoring Analysis and Reporting Technology): smartcl and smartd. The former is the utility we use directly to check S.M.A.R.T attributes, run tests, or perform other actions; the latter is the daemon which can be used to schedule operations in the background. In this tutorial we will learn the basic usage of smartctl.

In this tutorial you will learn:

  • How to install smartmontools package on various distributions
  • What are the differences between the S.M.A.R.T self-tests
  • How to use smartctl to check the health of a storage device
  • How to run tests on a storage device from the command line

The default port for SSH on Linux systems is 22. There are a few reasons why you may want to change this to some other number. If multiple servers share the same IP address (behind a NAT configuration, for example) you usually can't have them running SSH on the same port and expect to access them from outside the network.

The other big reason is security. Changing the SSH port would fall under "security through obscurity" which means that the security isn't technically enhanced, but the SSH port has been obscured and isn't as easy for attackers to access. In practice, this means that the thousands of bots scanning the internet for open SSH servers are a lot less likely to find yours.

In this article, we'll take you through the step by step instructions of changing the default SSH port on Ubuntu Linux and CentOS Linux. Since Ubuntu is based on Debian, you can also apply the same instructions to other Debian based systems, like Linux Mint. CentOS is based on Red Hat, so its instructions can also be extended to Fedora and other similar Linux distributions.

In this tutorial you will learn:
  • How to change SSH port on Ubuntu and CentOS Linux

The rsync command on a Linux system can be used to synchronize the contents of two directories. By default, rsync will transfer all files and directories over to the specified destination. If there's a subdirectory you wish to exclude from the transfer, rsync gives us two options for doing so.

In this tutorial, we'll show two methods for excluding one or multiple directories from an rsync transfer. Follow along with the example commands below on your own system to configure a directory for exclusion.

In this tutorial you will learn:
  • How to exclude a directory in rsync command

How to kill a process on a Linux system is an essential thing for admins and users to know. The go-to method for this is usually with the kill command, which involves killing a process by its PID (process ID).

Sometimes, though, it's more convenient to kill a process by name rather than going through the routine of locating its PID each time. There are two commands we can use to kill a process by name, those being killall and pkill.

In this tutorial, we'll go over both killall and pkill commands and show examples for how they can be used to kill processes by name only.

In this tutorial you will learn:
  • How to kill a process by name with killall and pkill

cron is the job scheduler in Linux systems that can execute commands or scripts at regular intervals. Each task scheduled in cron is called a cron job. The utility used for scheduling these jobs is called crontab.

A common cron job that Linux admins use on their systems is to execute a command or script every 5 minutes. In this guide, we'll show you how to use crontab to setup a cron job that runs every 5 minutes.

In this tutorial you will learn:
  • How to set crontab to execute every 5 minutes

The nslookup utility can be installed and used on a Linux system to find out information about the DNS records for a domain or IP address. It's particularly handy when troubleshooting DNS issues. A popular tool that also comes installed with nslookup is dig, which is similar but uses different resolvers. It's a good alternative to nslookup, but nslookup is typically easier to use.

In this tutorial, we'll guide you through the installation of nslookup on major Linux distributions and show various command line examples that you can use on your own system when you need to obtain DNS information.

In this tutorial you will learn:
  • How to install nslookup on major Linux distros
  • Nslookup command line examples

TeamViewer is used for controlling remote computers, online meetings, file transfers, and a few other things. Being that it's proprietary software, it can be a little trickier to install it on a Linux system than most free and open source alternatives.

In this tutorial, we'll guide you through the step by step instructions to install TeamViewer on most major Linux distributions.

In this tutorial you will learn:
  • How to install TeamViewer on Ubuntu, Debian, and Linux Mint
  • How to install TeamViewer on CentOS, Fedora, and Red Hat
  • How to install TeamViewer on Manjaro and Arch Linux

When working with Git, it's common for projects to contain multiple branches. Over time, these branches may become irrelevant and need deleted. Other times, they change purpose and its necessary to rename the branch.

In this guide, we'll show you the step by step instructions for deleting Git branches via the command line on a Linux system. We'll show the process for deleting local branches as well as remote branches in the sections below.

In this tutorial you will learn:
  • How to delete local and remote Git branches

When working with Git, it's common for projects to contain multiple branches. Sometimes these branches change purpose over time or simply have a naming error, and in such cases it's necessary to rename the branch.

In this guide, we'll show you the step by step instructions for renaming Git branches via the command line on a Linux system. We'll show the process for renaming local branches as well as remote branches and go over what you need to know to ensure a smooth transition.

In this tutorial you will learn:
  • How to rename local and remote Git branches

Symbolic links (also known as symlinks or soft links) are one of two types of links that you can create on a Linux system. If you're just now learning about symbolic links, it may help to think of them as "shortcuts," a term commonly used by Windows systems to represent basically the same thing.

Symbolic links are used to link to hard links. If you're interested in learning more about hard links and how they compare to symbolic links, check our guide on creating hard and soft links. Suffice it to say that symlinks are just entries in the file system that point to files or directories. They're mostly used for convenience.

In this guide, we'll run through the step by step instructions of creating and removing symbolic links. You can follow along with our examples below on your own command line to get a feel for how they work.

In this tutorial you will learn:
  • How to create and remove symbolic links

FIND LATEST LINUX JOBS on LinuxCareers.com
Submit your RESUME, create a JOB ALERT or subscribe to RSS feed.
LINUX CAREER NEWSLETTER
Subscribe to NEWSLETTER and receive latest news, jobs, career advice and tutorials.
DO YOU NEED ADDITIONAL HELP?
Get extra help by visiting our LINUX FORUM or simply use comments below.

You may also be interested in: