Df and du are two very useful utilities which are normally installed by default in all Linux distributions. We can use the first one to obtain an overview of the used and available space on mounted filesystems; the second, instead, is very useful to obtain a detailed report about the space used by files and directories. In this article we take a look at their usage, and we see what are the most common used options which can be used to modify their behavior.

In this tutorial you will learn:

  • How the df utility works
  • How to show the output of df in human-readable form
  • How to include the filesystem type in the output of df
  • How to include or exclude filesystems from the output of df
  • How the du utility works
  • How to obtain a human-friendly output with du
  • How to obtain a summary of the used space
  • How to exclude files from the output of du
  • How to obtain a “grand total” of the space in use by multiple directories

The purpose of this guide is to go over the uptime command on Linux. It's a rather simple command that will only take you a minute or two to master, but it will come in handy more than you might expect.

Follow along with us below as we show various examples of uptime and the options you can use with the command. We'll also see why the command can be useful.

In this tutorial you will learn:
  • What is the uptime command used for?
  • How to use uptime command with examples
uptime command on Linux
uptime command on Linux

There is certainly no shortage of ftp client on Linux: some come with a graphical user interface such as Filezilla, others are command line applications which can be used even when display servers, such as Xorg or Wayland are not available. In this article we talk about one of the most used and feature-rich CLI ftp client: lftp.

In this tutorial you will learn:

  • How to install lftp on the most used Linux distributions
  • How to connect and authenticate to a remote host
  • How to create, remove, edit and list bookmarks
  • Some of the most used lftp commands
  • How to run commands non-interactively
  • How to download torrent files with lftp

Anaconda is a distribution of python and other open source packages that are meant to be used for scientific computing. It is frequently used for data science, predictive analytics, and machine learning. Installing Anaconda is the fastest way to have all of the tools for scientific computing readily available to you. It includes the conda package manager, IPython the interactive python shell, the spyder IDE, along with the Project Jupyter interactive web based computational environments: Jupyter Notebook, and JupyterLab.

Anaconda also includes indispensable scientific python packages such as NumPy, pandas, and matplotlib. Such packages could always be manually installed with pip, but having them all pre installed saves a lot of time and effort. Anaconda also includes Anaconda Navigator, a user friendly GUI that serves as a launcher for many of the aforementioned tools and also makes it easy to install and launch optional programs such as RStudio and VS Code. Installing RStudio and installing VS Code could be done independently from Anaconda, but once again, Anaconda streamlines the process of installing multiple packages, saving you a lot of time and effort.

In this tutorial you will learn:

  • How to install Anaconda on Linux
  • How to keep your Anaconda environment up to date.
  • How to search for, install, and remove packages with conda
  • How to clean the package cache to free up disk space with conda

Have you or one of your MariaDB users forgotten the password to a MariaDB account? It's very easy to reset a MariaDB user password on Linux, and we'll show you the commands and step by step instructions below.

Resetting the MariaDB root password requires a different set of instructions, which we also cover below. Depending on which account you need to change the password for (a normal user or root), follow the appropriate section below.

In this tutorial you will learn:
  • How to change MariaDB user password
  • How to change MariaDB root password
Changing MariaDB user password
Changing MariaDB user password

The goal of a relational database normalization is to achieve and improve data integrity and avoid data redundancy so to avoid possible insertion, updation or deletion anomalies. A relational database is normalized by applying a series of rules called normal forms. In this article we will discuss the first three normal forms.

In this tutorial you will learn:

  • What is the first normal form
  • What is the second normal form
  • What is the third normal form

There's no shortage of compression tools available for Linux systems. Having so many choices is ultimately a good thing, but it can also be confusing and make it more difficult to select a compression method to use on your own files. To complicate things further, there is no objectively best tool for every user or system, and we'll explain why.

When it comes to compression, there are two benchmarks that we need to be concerned with. One is how much space is saved, and the other is how fast the compression process takes place. Another thing to take into consideration is how widespread a certain compression tool is. For example, it'd be much more appropriate to package files into a .zip archive instead of .tar.gz if you know that the archive will need to be opened on a Windows system. Conversely, a .tar.gz archive makes more sense on Linux, since tar files save file permissions.

In this guide, we'll be looking at a variety of compression tools that are available on the most popular Linux distributions. We'll compare their compression ratio, speed, and other features. By the end of this guide, you'll be armed with enough information to choose the best compression tool for any given scenario.

In this tutorial you will learn:
  • Benchmark results of various compression utilities
  • How to conduct your own tests to measure compression ratio and speed
  • Picking a compression utility based on compatibility

NetworkManager is a software utility for configuring and managing network interfaces. It is developed by the Gnome project and is used in many distributions and by many Desktop Environments. The stated goal of NetworkManager is to make setting up and configuring networking as automatic and painless as possible, so that it just works. To aid in this goal NetworkManager can perform connectivity checking in order to determine whether your network has full internet connectivity.

The purpose of this is primarily to determine whether the network you are using implements a captive portal. Many public Wi-Fi connections implement captive portals where the user must first sign in or agree to the terms and conditions before full internet access is granted. As a result, NetworkManager’s connectivity checking feature enables the captive portal to be presented to the user easily so that they can use the public Wi-Fi without much fuss.

How to prevent NetworkManager connectivity checking
How to prevent NetworkManager connectivity checking

The way that the connectivity checking works is by performing an HTTP request to a distribution defined URI. If the request is successful then NetworkManager assumes that you have full internet connectivity, otherwise it assumes that you are behind a captive portal. By default, this request is sent once every 300 seconds. Some users may find this behavior undesirable as it enables both the server and anyone who is in a position to monitor network activity to determine information that may be considered private. Connectivity checking enables them to determine that your machine is on and connected to the internet. It also enables them to determine what distribution you are using and that you are in fact using NetworkManager.

Depending on your use case and threat model this may either be considered an insignificant risk that is worth captive portal detection working seamlessly or a completely unnecessary risk that is best avoided. If you use NetworkManager on your laptop and frequently take it to cafes and other public places to use their Wi-Fi then it may be best to leave connectivity checking on, or at least turn it back on when necessary. Conversely, if you use NetworkManager on a desktop or server that is stationary and plugged into Ethernet then it may make sense to disable connectivity checking. We will look at how to turn off NetworkManager connectivity checking on two popular distributions, Ubuntu version 20.04 and Arch Linux.

In this tutorial you will learn:

  • How to turn off NetworkManager Connectivity Checking on Ubuntu 20.04
  • How to turn off NetworkManager Connectivity Checking on Arch Linux

Software requirements and conventions used

Software Requirements and Linux Command Line Conventions
Category Requirements, Conventions or Software Version Used
System Ubuntu, Arch Linux
Software NetworkManager
Other Privileged access to your Linux system as root or via the sudo command.
Conventions # - requires given linux commands to be executed with root privileges either directly as a root user or by use of sudo command
$ - requires given linux commands to be executed as a regular non-privileged user

How to turn off NetworkManager Connectivity Checking on Ubuntu 20.04

By default, Ubuntu 20.04 establishes an http connection to http://connectivity-check.ubuntu.com once every 300 seconds as described above. In Ubuntu you can easily turn off connectivity checking through a user friendly user interface. To do so follow the directions below.

To turn off connectivity checking in Ubuntu 20.04 click the upside down triangle in the top right-hand corner and then click Settings. Next, click Privacy and then click Connectivity.

You will see a toggle for Connectivity Checking. Simply turn this toggle off and you have turned off NetworkManager’s connectivity checking feature.

Ubuntu connectivity toggle
Ubuntu connectivity toggle

Subscribe to our NEWSLETTER and receive latest Linux news, jobs, career advice and tutorials.

When you change this toggle, what is actually happening behind the user interface is that a value in a configuration file is being changed.

If you examine the contents of the /var/lib/NetworkManager/NetworkManager-intern.conf file before and after toggling this option then you will see that the .set.enabled=true setting under [connectivity] changes to .set.enabled=false after toggling the Connectivity Checking option off in the user interface. With this in mind, if you prefer to use the terminal to change this setting then you can simply edit the file yourself by following the steps outlined below.

First, using your preferred text editor, open the /var/lib/NetworkManager/NetworkManager-intern.conf file with root privileges.

$ sudo vim /var/lib/NetworkManager/NetworkManager-intern.conf

Next, change the following value in the relevant setting from true to false.

Change the following




Finally, restart the NetworkManager service like so.

$ sudo systemctl restart NetworkManager

After following the steps above, if you look at the Connectivity Checking setting in the Settings GUI then you will see that the setting has been toggled off.

How to turn off NetworkManager Connectivity Checking on Arch Linux

Overriding the connectivity checking settings for NetworkManager in Arch Linux looks a bit different compared to Ubuntu. Unlike Ubuntu, Arch Linux let’s the user choose the Desktop Environment and set of packages that they are using, so you may not even be using NetworkManager on your Arch system. If you elected to install NetworkManager or a Desktop Environment that uses it then by default Arch establishes a connection to http://www.archlinux.org/check_network_status.txt every 300 seconds as described in the intro.

The Arch project acknowledges that automatic connectivity checks are a potential privacy leak, but they state that they are committed to not logging any access in order to minimize the risk. That commitment prevents Arch from associating you with the connections to their servers, but it still allows anyone who is in a position to monitor network activity to determine information that may be considered private. The recommended method to override this setting and turn off connectivity checking completely is to create a new file with your preferred configuration. The file you must create is /etc/NetworkManager/conf.d/20-connectivity.conf.

First create the new file using your preferred text editor.

$ sudo vim /etc/NetworkManager/conf.d/20-connectivity.conf

As per the CONNECTIVITY SECTION of the NetworkManager man page there are a number of ways to disable connectivity checking within this configuration file. We will use the method that changes the interval setting in order to disable it. The interval setting configures how often NetworkManager pings the uri specified. By default this value is 300, meaning once every 300 seconds. If we change this value to 0 then NetworkManager will never ping the uri specified, thus disabling connectivity checking. Enter the following into the file that you just created (/etc/NetworkManager/conf.d/20-connectivity.conf) and then save it.


Next, restart the NetworkManager service

$ sudo systemctl restart NetworkManager

Now NetworkManager Connectivity Checking is disabled on your Arch Linux system.


In this article we discussed the connectivity checking feature of NetworkManager. We examined what it is, why it exists, and why you may not want to keep it enabled. We discussed the pros and cons of disabling the feature and then we then examined how to disable it on Ubuntu and Arch Linux. Whether you decide to leave connectivity checking enabled or disable it, we think that it is important that you know about this feature and we hope that this knowledge empowers you to make the decision that is right for you.

xz compression has been rising in popularity because it offers smaller file sizes than gzip and bzip2. You're still likely to see all three on a Linux system, but you may want to start opting for xz if you want smaller file archives.

In this guide, we're going to introduce you to xz compression, starting from basic examples to more specific and advanced usage. If you've worked with compressed tar files or gzip compression (files with the .tar.gz extension, for example) in the past, you'll find that xz feels very familiar.

In this tutorial you will learn:
  • How to create xz compressed archives from command line or GUI
  • How to decompress xz archives from command line or GUI
Beginners guide to xz compression on Linux
Beginners guide to xz compression on Linux

When compressing large files on a Linux system, it can be handy to split them into multiple blocks of a specific size. This is especially true for squeezing a large archive onto multiple discs, or uploading a large archive online in chunks.

Linux makes this possible with tar files, as we've seen in our split tar archive into multiple blocks guide, but you can also do it with zip files.

In this guide, we'll see the step by step instructions to create a zip archive split into multiple blocks. We'll also go through the process of unzipping the split archive.

In this tutorial you will learn:
  • How to split zip archives into multiple files
  • How to open split zip archives
Combining files into a split zip archive
Combining files into a split zip archive

Tar archives can be split into multiple archives of a certain size, which is handy if you need to put a lot of content onto discs. It's also useful if you have a huge archive that you need to upload, but would rather do it in chunks. In this guide, we'll show you the commands you need in order to split tar archives into multiple blocks on a Linux system.

This will work regardless of what type of compression (or lack thereof) that you use. So files with extensions like .tar, tar.gz, tar.xz, etc. can all be split into chunks. We'll also show you how to extract files from archives that have been split into numerous files.

In this tutorial you will learn:
  • How to split tar archives into multiple files
  • How to open split tar archives
Splitting tar archive into blocks
Splitting tar archive into blocks

Gentoo is a Linux distribution with an extreme focus on flexibility and customization, right down to the kernel. For other most popular Linux distributions, please visit our dedicated Linux download page.

When I hear about Linux distros that really leave a lot of control up to the user, usually Arch Linux makes its way into the conversation, and maybe Slackware as a more extreme example. But Gentoo definitely takes it a step further, as the user must compile the kernel itself as part of the installation process.

It's an advanced process, but Gentoo developers also make it a bit easier with the "genkernel" utility, which can help you compile the kernel in a few short commands. Advanced Linux users can still take as much time as they like to strip the kernel of components they deem unnecessary, or adding in those that they want on their system. This attribute makes Gentoo a modular operating system by design. Each user can customize their out of box experience, making Gentoo highly adaptable.

Choosing what goes into your kernel will lead to a very speedy system with a small RAM footprint. Back when Gentoo premiered in 2000, this was a very enticing feature. These days, with current hardware advancements, most Linux users will probably prefer the GUI installers and precompiled kernels that have become standard in the most common distros. However, Linux veterans that have a passion for tinkering will get their fill of it with Gentoo, and that's really the target audience.

So, Gentoo is a good way to get your nerd fix, but it also works well for specialized servers. For example, if you are running a database server, you could exclude unrelated components from the kernel. This will give you the speediest system possible, and it will have a smaller chance of encountering problems. This is particularly useful on servers with limited hardware specs.

Granular control remains present after you get Gentoo up and running. It uses the Portage package manager (invoked with the emerge command) and USE flags to optionally exclude components from the system. For example, you can install the SeaMonkey web browser, without the PulseAudio component, with the follow command.

# USE="-pulseaudio" emerge www-client/seamonkey

Such flags are also possible to set globally, which helps to ensure that certain components never find their way onto your system. PulseAudio and systemd, among others, are popular components that users like to exclude. It's also worth mentioning that Google bases their Chrome OS off of Gentoo.

Slackware is a Linux distribution that dates all the way back to 1993. As a matter of fact, it's the oldest Linux distribution that's still maintained. For other most popular Linux distributions, please visit our dedicated Linux download page.

Linux has come a long way since its inception in the early '90s. Many distros from back then are no longer around, and the ones that are, have undergone extreme change over the years - as one would probably expect. Slackware, though, has only evolved about as much as it absolutely had to.

Using this distribution is probably the closest you can get to "old school" Linux. It's not completely devoid of newer innovations; it does have a package manager after all. But package dependencies are not resolved for you. There's no GUI installer. There's no systemd. While the vast majority of Linux distros adopted all these conventions over the years, Slackware refrained.

Slackware offers its users a decidedly simple, barebones experience. Installation is not necessarily hard, but you'll probably need a guide to walk you through it. There's no hand holding, as Slackware expects its userbase to be well versed in Linux commands. On the plus side, this puts you in total control over your system.

During installation, you can control how much software is installed out of the box. The "full" installation, after everything's up and running, weighs in at about 9 GB. So, Slackware still comes decked out with the essentials, assuming you choose that option. Package dependencies for included software are already installed, but extra packages will require you to install dependencies manually. This may take a little research on your part, but using Slackware means you're prepared to get your hands dirty.

Slackware is for Linux veterans that want granular control over their system. It's an extremely simple and extremely stable operating system. It's the most UNIX-like Linux distribution that you can get. Some will get joy from using it, and others will only get a headache. It's one of those things you either love or hate.

In this guide, we'll be going over the step by step instructions to remove NGINX web server and reverse proxy server from Ubuntu Linux. Ubuntu offers us two options for uninstalling the software, either "remove" or "purge." Read on to learn the difference and find out how to perform either function.

In this tutorial you will learn:
  • How to remove, purge, or reinstall NGINX web server / reverse proxy from Ubuntu

If you're running openSUSE inside a VirtualBox virtual machine, installing the Guest Additions software will help you get the most out of the system. VirtualBox Guest Additions will give the machine more capabilities, such as a shared clipboard with the host system, drag and drop file transfer, and automatic window resizing.

This makes copying data to and from a host system much more convenient. It also changes the VM's resolution automatically when its window is resized, so you don't need to change it manually. Guest Additions will work with just about any Linux distribution, but instrutions can differ because of dependencies and package managers.

In this guide, we'll be going over the step by step instructions to get VirtualBox Guest Additions installed on openSUSE. With these instructions, it doesn't matter what host system you're using, as long as the virtual machine is running openSUSE. This guide assumes that you've already installed openSUSE in the VM correctly.

In this tutorial you will learn:
  • How to install VirtualBox Guest Addition on openSUSE

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

You may also be interested in: