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

If you have an outdated or unused account in your MySQL or MariaDB database, it's best to get rid of it. Having even one extra user is an additional vulnerability and attack surface in the database. In this guide, we'll show you the step by the step instructions to delete a specific user from a MySQL or MariaDB database from the command line on a Linux system.

DID YOU KNOW?
If you've forgotten the password to a user account and need to reset it, there's no need to delete it and start over. We have separate guides for changing a user password in MySQL and changing the root password in MySQL.
In this tutorial you will learn:
  • How to delete a user from MySQL/MariaDB database

LUKS is the acronym of Linux Unified Key Setup: it is the most used encryption implementation used on Linux systems and can be configured as an alternative to dm-crypt plain setup. Compared to the latter it provides some additional features like password hashing and salting and the ability to store multiple passwords in the so called LUKS header. In this tutorial I will assume the reader has a certain familiarity with LUKS; if you want to know more about this subject, you can check our basic guide about encrypting linux partitions with luks. The most common way to protect a LUKS device is to use a passphrase, however it is also possible to use a file as a key; in this tutorial we will see how to do this. Let’s go!

In this tutorial you will learn:

  • How to create a file with random data to use as a LUKS device key
  • How to add a key to a LUKS device
  • How to automatically decrypt a LUKS device at boot using a file as a key

npm is the package manager for Node.js and the JavaScript coding language. It can be installed on a Linux system and then used on the command line to download and install JavaScript packages and their requisite dependencies.

It's especially useful for developers working with Node.js, as npm's online registry contains a plethora of JavaScript packages that can be browsed and downloaded with ease. It's available for installation on any major Linux distro and operates in much the same way as a distro's package manager, which you're probably already familiar with.

In this guide, we'll show you how to install npm on various Linux distributions. We'll also show you basic usage commands for npm, such as installing and removing software packages.

In this tutorial you will learn:
  • How to install npm on major Linux distributions
  • Basic usage commands for npm

PXE (Preboot eXecution Environment) is a client-server environment which makes possible to boot and install operating systems without the need of physical media. The core idea is quite simple: in a very early stage, a client gets an IP address from a DHCP server and downloads the files needed to perform the boot process via the tftp protocol (Trivial ftp). In this tutorial we will use the dnsmasq application: it can be used as a primary DHCP server or in proxy DHCP mode if another DHCP server exists in the network; it also provides the tftp service used to transfer files.

In this tutorial you will learn:

  • How to configure pxelinux and create a boot menu
  • How to extract files from an ISO and setup the appropriate file structure
  • How to configure dnsmasq as a standard or proxy DHCP server
  • How to configure the tftp server embed in dnsmasq
  • How to allow traffic through the needed ports using ufw

pip is the package manager for the Python coding language. It can be installed on a Linux system and then used on the command line to download and install Python packages and their requisite dependencies.

This gives developers - as well as users who are just executing Python programs but not developing them - an easy way to download software packages written in Python. It's available for installation on any major Linux distro and operates in much the same way as a distro's package manager, which you're probably already familiar with.

In this guide, we'll show you how to install pip for Python 2 and Python 3 on various Linux distributions. We'll also show you basic usage commands for pip, such as installing and removing software packages.

In this tutorial you will learn:
  • How to install pip for Python 2 and Python 3 on major Linux distros
  • Basic usage commands for pip

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: