How to Get Virus Protection with Avast For Linux

Avast is a popular virus protection software for Windows. But what about an alternative operating system such as Ubuntu? The good news is, you can get Avast for Linux.

Well, sort of. (We will get into that soon.) The question is, do you really need it, and if so, what should you pay for it (if at all)?

We will go over the basics of Avast for Linux in this article, so you can make an informed decision about this virus software solution.

What is Avast Virus Software?

Avast is a popular brand of virus software that is primarily used on Windows machines to scan for problematic programs that interfere with computer operations.

Avast has a free home edition for individual users, and this popular software is a favorite among desktop Windows workers who want cheap virus protection.

Avast generally works quite well. It’s main problem (at least with the free edition) is the excessive number of pop-ups that constantly activate in Windows trying to egg you on to buy the commercial version.

It is annoying, and more than one Avast installation has been removed entirely because of this constant nagging advertising.

Commercial editions are also available for various fees, with more features. Versions of the software are made for PC, Mac, Android, and iPhone and iPad.

A current version of Avast’s free home edition for Linux is not available on the Avast website, since they stopped offering it.

However, you can find an older version online potentially at places like Softpedia and other software websites. You might also be able to get an older version through various Linux or Ubuntu repositories.

Avast does have an up-to-date security suite for Linux that is different from the home edition, which we will explain later.

Virus Software for Linux: Do You Really Need It?

Before we even get into Avast for Linux, let us talk about whether you really need it. Then, you will understand a bit more about the availability of Avast for Linux.

Perhaps you are coming from a Windows environment, and you have decided to take the plunge and install the Ubuntu Linux operating system on a spare desktop computer.

After many years of dealing with Windows issues, which might have included viruses, spyware, and adware, you may be justifiably concerned that your shiny new installation of Ubuntu is naked and vulnerable without virus protection software.

For this reason, you may be wondering if you can get Avast for Linux to keep your Ubuntu system free from pesky viruses and Trojans.

Here’s the thing: We’re not saying you shouldn’t install Avast for Linux.

However, the chances of your Linux operating system (whether Ubuntu or another version of Linux) getting a virus is very small, especially compared to Windows.

In fact, this snippet from a review of Avast! Linux Home Edition just about says it all:

“Avast! Linux Home Edition is a freeware graphical software tailored specifically for

GNU/Linux operating systems and designed from the ground up to act as a reliable and capable antivirus solution.

It promises to keep your computer from unwanted computer viruses, even though they pretty much don’t exist for desktop-oriented Linux distributions.”

Windows is More Vulnerable to Viruses Than Linux

laptop with upgrading windows on the monitor

Image by Gerd Altmann from Pixabay

The truth is, Windows is just a lot more vulnerable to viruses and spyware than Linux is. This is especially true of older versions of Windows, such as Windows XP, Windows Vista, and Windows 7.

Windows 10 is a little better in terms of vulnerability than earlier releases of Windows, but it is still a lot more vulnerable than Linux or Ubuntu is overall.

In fact, you could run Linux for 10 years without any virus software, surfing the web and exchanging emails, and never once have a problem with a virus. Try to say that about Windows!

So, why is this?

For one thing, it has to do with how the Windows operating system works.

You do not need to understand the technical underpinnings here, but one thing that makes Windows much more vulnerable than Linux is its reliance on DLLs or Dynamic Linked Libraries.

These DLLs are important for programs to run, but they can be more easily hacked.

The Windows registry is also another vulnerable potential point of corruption for virus or trojan software.

The Linux kernel that runs the operating system (this also applies to Ubuntu) is self-contained and needs to be recompiled before it is updated. Therefore, it is harder to mess with.

Also, more people use Windows, so spammers, hackers, and virus programmers spend their efforts more on Windows because it is simply more profitable.

Linux users are also generally more tech savvy and tend to be developers. 

There is no point in developing ransomware for Linux, because the average Linux user could quickly figure out how to disable such a terrible program.

Hackers may also just hate Microsoft and just want to mess with it by writing virus software. So, there you go. Windows is much more vulnerable than Linux.

All that said, Linux isn’t impervious to attacks by hackers, but these attacks tend to be more in the forum of an intrusion or break in than a virus or spyware.

Therefore, if you are using Linux, especially Ubuntu, for personal use, and you are keeping it up to date, you shouldn’t panic if your system isn’t protected by virus software.

Why You Might Want to Use Avast for Linux

Well, now you understand why Avast most likely got rid of its home edition for Linux. No-one really needed it, and it wasn’t profitable for them. You could maybe download and install an old version.

But you probably don’t need the old version of Avast for Linux to handle virus software problems. It is out of date anyway.

Instead, what Avast has for Linux and Ubuntu are security services that go beyond virus scanning.

You can use the Avast for Linux software as a security suite to monitor traffic going to your Linux server.

Avast for Linux Options

man working on computer

Image by rawpixel from Pixabay

Here are the current offerings for Linux by Avast.

They are designed for Linux “servers” but could work just as well on a home Ubuntu machine – they just might be more power than you need.

You should note that these services for Linux by Avast are only guaranteed to work with certain Linux distributions or flavors.

As of this writing, these include:

  • CentOS 6 and newer
  • Debian 7 and newer
  • Red Hat Enterprise Linux 6Ubuntu LTS 12.4
  • Ubuntu LTS 12.4

Note that while Avast for Linux is designed to work with Ubuntu LTS 12.4, Ubuntu is built on Debian. Debian 7 is what Ubuntu version 11.10 was built on, with newer versions of Ubuntu being either Debian 7 (“Wheezy”) or higher.

You might have to test out Avast for Linux to see if it works on these other Ubuntu distributions.

Each of the Linux security services by Avast has a free trial offer that you can request.

(Prices are current as of this writing and may have changed by the time you read this.) Note that none of them focus on virus scanning:

1. Avast Core Security

This is the “core” security module available for Linux servers and includes a core scanner that can be activated from the command line or integrated for email protection.

The system boasts a connection with “CommunityIQ” to maintain information about the latest security threats. It also supports 64 bit Linux servers as well as 32 bit ones. A one-year license for one server is $159.99.

2. Avast File Server Security

The Avast File Server Security includes Avast Core Security. It is designed to help speed up clients connecting to the server by protecting server files.

It leverages multiple CPU cores (if you have them on your server) to support fast file transfers. Samba and NFS are both supported.

The cost for Avast File Server Security is $199.99 per year for one Linux or Ubuntu server.

3. Avast Network Security

The Avast Network Security service includes Avast Core Security but not Avast File Server Security.

Additionally, it scans and filters traffic on your server, including HTTP and email traffic. It is designed to have no impact on your Linux server’s performance. Popular secure protocols such as HTTPS, POP3S, and IMAPS are supported.

The cost for Avast Network Security is $199.99 per year for one Linux or Ubuntu server.

4. Avast Security Suite

Avast Security Suite for Linux includes all of the above server products: Avast Core Security, Avast File Server Security, and Avast Network Security.

A one-year license for one Linux server is $239.99.

Is Avast for Linux Worth It?

As you can see, you can’t really use Avast for Linux in the same way you use it on Windows.

Whether or not you want to try Avast’s premium services for Linux servers depends on what your needs are.  Many free Linux firewalls are available, but perhaps Avast has something more to offer you.

Featured Image CC 4.0 by Chanyiksun via WIkimedia Commons

What Is Gunzip & Is It Worth My Time?

If you want the ability to decompress files and unzip file archives on Linux distributions like Ubuntu, then you will want to use Gunzip.

Gunzip is actually not the name of the program itself. The name of the program is Gzip. Gunzip is one of the commands you might use with Gzip.

What Exactly is Gzip?

Gzip stands for GNU zip. The name gzip is actually lowercase, though it is perfectly OK to capitalize Gzip if you want.

GNU refers to the GNU free software project. Gzip is therefore a free, open source software that you are free to update and modify as you want.

Gzip is primarily used on Linux machines running various flavors of the operating system such as Ubuntu, Linux Mint, CentOS, Red Hat Linux, or Fedora.

You can also use gzip on Unix, which is basically like Linux. And, there is a command-line version of gzip that runs on Windows and DOS.

Gzip has been around for decades. The file compression software was first released in 1992. It is a very common compression tool used a lot for Linux files that are distributed on the Internet.

This is because gzip reduces the size of files, making it quicker to upload and download. And, this file compression also reduces bandwidth, which can potentially save you on web hosting costs if you are uploading and downloading a lot of files.

The output of a gzip file will be labeled with the file extension .gz, which distinguishes it from other types of compressed files such as .zip (for a Windows zip file) or .sit (for a Mac Stuffit file).

Note: Just because gzip has the word “zip” in its name, the files it produces are not .zip files.

Gzip generally runs through a command line interface. That means, you don’t use a GUI or graphical user interface.

What Exactly is Gunzip Then?

Gunzip is simply a way to decompress gzip files. We will get into the finer points of how the command works down below, but you can guess how it works.

Simply type “gunzip <filename>” and your .gz file will be unzipped. Simple, eh?

Other Types of Compression Formats

Before we get into more of the “how to” on using gzip and gunzip, let us look at a few other file compression forums that you may run across. 

We want to avoid confusion, and understanding some of the basic differences can be helpful.

  • .Zip Files

The most common file type that you might confuse with a gzip file is a .zip file. The zip format was originally used on Microsoft machines only, but you can now use zip files on more than just a Windows box.

Just remember: .zip files are not .gz files and vice versa.

The .zip file is probably now the default compressed file used everywhere and on any type of machine. You can handle .zip files now on Microsoft Windows, Linux distributions like Ubuntu, and on Apple Macintosh computers.

Programs that you might use to manipulate zip files include WinZip and 7-Zip. Since Windows 7, Microsoft has included a native ability to zip and unzip files right in Windows from Windows Explorer.

You can zip a folder or file by selecting the item in question, right-clicking on it, and then select “Send to” and then “Compressed (zipped) folder.”

You can unzip a file or folder in Windows in two ways: With a folder you can simply double click on the zipped folder and then drag a file or files out of it into another folder in Windows Explorer.

Or, you can right click on the zip file, select “Extract All,” and then follow the onscreen instructions.

Windows now has other neat features that make managing zip files easier, such as dragging a new file to an existing zip folder to add it to the existing zip archive.

  • .Sit or Stuffit Files

Files with the extension .sit are StuffIt files from Mac computers, originally from software called “StuffIt Expander.” It used to be a big problem if someone with a Mac sent a Stuffit file to a Windows machine, but it is now a lot easier to deal with Stuffit files than it used to be.

SmithMicro Software, which still makes StuffIt software, has a free StuffIt Expander for Windows program so you can unstuff files made on Mac computers easily and without paying extra money.

This program will also open up .rar and .zip files, which is good to know, because sometimes it can be hard to know what to do with a .rar file. What is a .rar file anyway?

  • .Rar Files

.Rar files are a bit rarer than the user-friendly Stuffit or .zip files. “RAR” stands for “Roshal Archive Compressed.”

.Rars can be password protected, which makes them useful in some circumstances, but unless you are a power user, there are easier options to use.

In fact, most people won’t ever have to deal with a .rar file at all. However, the .rar file type is often used on

Torrent sites as a way to compress and break up large files. What can make .rar files confusing is that they can be compressed and broken up into multi-part .rar files.

Then, you have to collect all those different files to put the .rar back together again. If you are missing part of the .rar file, the decompression won’t work.

What You Do Need to Know: .Tar Files

If you are planning on using Unix or Linux a lot, you can expect that along with gzip files, you will run across another extension: .tar

In fact, you will commonly see files named as follows:


What exactly does this mean?

First, a .tar file is an uncompressed file that is filled with multiple files and folders. It, in essence, freezes those files and folders in a format that maintains the folder structure.

For example, if you have a folder named FIRSTFOLDER with the following in it:


When you “tar” FIRSTFOLDER you will get a file called FIRSTFOLDER.tar.

When you open that file anywhere on a computer, it will open up exactly as the FIRSTFOLDER was originally set up.

This can be extremely useful when you want to send a lot of files and maintain the folder structure. It is essential for packing up and transmitting source code for a software program.

Now, here’s the fun part. If you want to compress that .tar file and make it smaller, especially if you want to send it via email, what to do you?

You gzip it!

Thus, when you gzip that .tar file, you get FIRSTFOLDER.tar.gz.

Note that you must first tar the folder up and then gzip it, not the other way around. When you want to open the gzipped .tar file, you must first gunzip it and then extract the .tar.

A Few Gzip Commands (Including Gunzip)

Now that you understand what gzip is and how a .gz file differs from .zip, let us look at a few basic commands. You will be in Linux at the terminal (command prompt).

  • To gzip a file, just type:

gzip filename

It will now be named filename.gz.

  • To gunzip that same file, type:

gunzip filename.gz

Note: You can use the gzip command with a -d after it as an equivalent to gunzip. It is just that gunzip is easier to remember.

  • But here is another way to gunzip that file:

gzip -d filename.gz

Opening Gzipped Tar Files

  • If you have a .tar file that is gzipped, here is a quick and easy way to open it:

gunzip filename.tar.gz

You will now have a file called filename.tar.

  • To extract the tar file, type:

tar -xvf filename.tar

Voila! All of the .tar files and folders are expanded and ready to explore!

Note: It might go without saying, but you want to extract that .tar file where you want it to go. You can, of course, move it later too.

These are the basic commands you need to use gzip. There are many other options to learn, but most of the time, you will just need the basics to gzip and gunzip files on Linux and Ubuntu machines.

So, in answer to the question: Is gunzip worth my time? Yes, it is, if you want to be able to decompress files on your Linux machine. Really, you can’t run Linux without it.

Gunzip is a Command to Decompress Files

Now that you know that the actual program is called gzip and not gunzip, you know that gunzip is a command.

The gunzip command is used to decompress gzip files. If you are running Linux, then you will probably use gunzip on a semi-regular basis. Otherwise, if you are Windows, just get a program like 7-Zip to do the job for you.

Everything You Need To Know About CSF Firewall

In this article, we are going to go over the basics of CSF Firewall, what it is, which platforms it runs on, and some basics about installing it.

We have tailored this information to new Linux system administrators or hobbyists who want to understand the basics of CSF Firewall, written out in plain English.

Linux: The Technical Environment We Are Working In

programming codes on a web

?Source: Pixabay

First of all, as we have already hinted at, if you want to run CSF Firewall, you need to be running a Linux server - not Windows or anything else.

Linux, as you probably already know if you are reading this, is an open source operating system based off of UNIX. (Linux is officially pronounced lee-nux (or a softer i as in “in”) and not like the name Linus van Pelt from Peanuts.)

CSF Firewall will run on the following Linux operating systems, and most likely newer versions as well:

  • RedHat Enterprise v5 to v7
  • CentOS v5 to v7
  • CloudLinux v5 to v7
  • Fedora v20 to v26
  • *openSUSE v10, v11, v12
  • *Debian v3.1 - v9
  • *Ubuntu v6 to v15
  • *Slackware v12

For these versions of Linux, you may need to customize some of the regex patterns used in functions.

CSF Firewall can also work on the following virtual servers:

  • **Virtuozzo
  • VMware
  • Xen
  • VirtualBox
  • **OpenVZ
  • MS Virtual Server
  • KVM

Both Virtuozzo and OpenVZ need the iptables to be configured correctly on the host server.

An Overview of CSF Firewall

Internet connection

?Source: Pixabay

CSF Firewall stands for ConfigServer Security & Firewall. It is a free Linux firewall provided by a UK company called Way to the Web Limited (trading as ConfigServer Services).

A firewall, as you probably already know, is a type of software that protects a computer or server from unauthorized intrusions and hacker attacks.

CSF Firewall has been around for a long time and has been considered for years a highly advanced firewall that is still simple enough for less experienced Linux system administrators. It has a ton of configurable options, but you don’t have to worry about all of them when getting started.

It is an alternative to other firewall options on Linux, such as APF Firewall.

You can install CSF Firewall on your Linux server and even use it on a VPS (Virtual Private Server).

Features of CSF Firewall

red and blue armor shield

?Source: Pixabay

CSF Firewall has a lot of great features and has configuration options for both simple installations and more complex needs. Here are just three of the many features of this free firewall software:

1. Login Authentication Failures

CSF Firewall will monitor your logins for repeated attempts to login. If too many login failures are recorded (which can indicate a hacking attempt), the software can automatically ban that IP address from accessing the server.

This feature works with mail servers, FTP servers, openSSH, administrative panels such as cPanel and WHM, websites protected by htpasswd files, and more.

2. Messenger Service

When an IP address is blocked, you can have CSF Firewall send a message to the client. This might provide additional information to a hacker, however, for a real user who might be stumped and frustrated by failed login attempts, it can be very helpful.

3. Port Flood Protection

The last thing you want is a Denial of Service (DOS) attack on your server. This will hang up your website and make it impossible to reach. CSF Firewall has configurable port flooding protection that can limit how many connections can be allowed within a certain time period.

Installing CSF Firewall

top view of workstation with hand on a laptop

?Source: Pixabay

How you install CSF Firewall will depend on what version of Linux you are running and other variables about your server environment. For the best advice on how to install CSF Firewall for your particular configuration, you should probably search “CSF Firewall installation on [Your Linux Version].”

Avoiding Conflicts with other Firewall Software

open laptop on a table

?Source: Pixabay

Make sure, if you want to run CSF Firewall on your machine, that you have uninstalled any other firewall software, as it could cause conflicts and generate problems. You would use your Linux package installer to remove existing firewall software, unless it was source installed.

On Linux versions such as CentOS, the package installer would be Yum. On Ubuntu and other versions, you may be using APT (Advanced Packaging Tool). These removal commands will differ based on the package installer, but can easily be found using an online search.

For example, if you want to remove APF Firewall version 9.6 from CentOS using Yum, you would use the command (as root):

rpm -e apf-9.6_5-1

With apt, the command might be:

apt remove apf-9.6_5-1

Or, if you are on Ubuntu and not logging in directly as root:

sudo apt remove apf-9.6_5-1

Remember, you would use the version number of the APF installation on your server, not necessarily the one shown here.

CSF Firewall Installation Instructions

If CSF Firewall is found in your package repositories, using the same package installer, you can download and install CSF Firewall that way.

If you are using the Synaptic package installer, which has an easy to use graphical interface, this might be the easiest route. Synaptic will install all the dependencies for you, making the process much quicker and easier.

Unfortunately, CSF Firewall is not included in many repositories, so you may need to download it manually. It is possible it might be available in some alternative repositories, in which case, you can add the repository to your package installer.

Alternatively, see below about Centmin Mod installation.

You will need to make sure Perl is installed on your machine, and if it isn’t, Perl must be installed first.

Assuming you have Perl installed, here are some simple commands to manually download and install CSF Firewall. These commands will work whether your server uses Apt or Yum:

# wget

# tar xfz csf.tgz

# cd csf

# sh

Make sure you are logged in as root, or, if using Ubuntu, prepend “sudo” in front of every command. (The pound sign above is indicative of a root prompt, and is not part of the command itself.)

Configuring CSF Firewall

Once you have installed the CSF Firewall software, you will need to configure it. There are many web pages with basic configuration information found easily through a search, such as this “how to” with basic command line instructions.

LAMP vs. LEMP Linux Installations

computer security to the web

?Source: Pixabay

For those who are more familiar with a traditional LAMP stack CSF Firewall works with LEMP.

If you want to experiment with running LEMP, or you don’t know what LEMPvs. LAMP is, we will cover that here.


LAMP stacks are common set ups for website servers and are used across the Internet by companies big and small.

LAMP stands for Linux, Apache, MySQL, and PHP. Linux is the operating system, Apache is the web server, MySQL is the database server, and PHP is the scripted programming language that delivers the web sites.


LEMP is pretty much exactly like LAMP, only it uses the nginx web server. Nginx is pronounced “engine-x.” Thus, we have an E in LEMP instead of the A for Apache.

Apache was around first and is a reputable web server, but has some limitations or at least stresses that are put on it at high loads. Nginx was specifically designed to address some of these problems that the Apache web server has.

Nginx has a smaller memory footprint and leverages asynchronous event-driven requests to improve performance at times of high web traffic.

If you are setting up a new Linux web server from scratch, and trying to decide between LAMP and LEMP, you might want to go with LEMP. Besides the potential performance boosting benefits, you can use CSF Firewall with Centmin Mod (you also have to run CentOS).

CSF Firewall on Centmin Mod

man working on a computer

?Source: Pixabay

If you are looking for an easy way to set up a new Linux server for the web, using CSF Firewall as well as a LEMP stack, here is a great option for you: Centmin Mod.

Centmin Mod is a LEMP stack that comes with an auto installer run through the command line.

It is designed for CentOS 6.x and CentOS 7.x (both flavors of Linux). It automatically installs and configures:

  • Nginx
  • MariaDB MySQL
  • CSF Firewall
  • Memcached Server

You also get other features, including third party YUM repositories and a variety of add-ons to Nginx.

For more information on how to install and use CSF Firewall with CentOS, check out the Centmin Mod website.

?CSF Firewall

man working on a computer security

?Source: Pixabay

CSF Firewall is an excellent system designed to prevent hacking attempts from succeeding. By using this software, you can help prevent hackers from hijacking and destroying your web server.

With lots of options, CSF Firewall is good for both novice and experienced system administrators. Best of all, it is free!

Problem Solved: How To Check Your Python Version

If you want to check the Python version on a Linux machine, it’s really not that hard.

Python is a great programming language to learn. It has simple syntax and yet it is also very powerful.

Having the latest version of the Python interpreter is a good idea. You don’t want to be using an old, out of date version, especially one that is deprecated.

How to Check Your Python Version

woman biting a pencil while working with the computer

?Source: Pixabay

So, let’s get to the nitty gritty. If you are running the Python interpreter on a Linux machine, here is what you need to do to check the Python version.

Some of these commands may also work on Windows machines using the Windows command line.

Command Line Python Version Check

Login as root, and from the command line, type:

python --version

(That is two dashes before the word “version.”)

If you are using Ubuntu, and can’t login as root, use the sudo command ahead of the text as follows:

sudo python --version

The shortcut to this is to use -V instead of --version, such as:

python -V

Or, in Ubuntu:

sudo python -V

You might also try a lowercase v, because it is by the way, an almost universal command on Linux to check the version of software running on the server. However, with Python, the uppercase V is what is in the user manual.

This can be confusing because so many other programs use a lowercase v.

For example, you can use the same command with php:

php -v

Or, in Ubuntu:

sudo php -v

However, sometimes, the name of the software is not so obvious. With the Apache web server, you would think that the command might be “apache -v” but this is wrong. To find the version of Apache running on your server, type this in instead:

httpd -v

Or, in Ubuntu:

sudo httpd -v

HTTPD stands for “HTTP Daemon,” which makes a bit more sense – this is the daemon (or server) that uses the HTTP protocol to deliver web pages.

At any rate, if you can remember the -v, and the lowercase version is not working, you now know to try an uppercase -V for checking the Python version.

You can also just type in “python” at the command line (or “sudo python” in Ubuntu). You will get not only the version you are running, but a lot more info, such as:

Python 2.7.5 (default, Jun 17 2014, 18:11:42)
[GCC 4.8.2 20140120 (Red Hat 4.8.2-16)] on linux2
Type “help”, “copyright”, “credits” or “license” for more information.

In some respects, this is just faster and easier, and gives you a lot more information about the entire platform.

Checking the Python Version from a Control Panel

Surprisingly, when you search for ways to check the Python version from an administrative interface or control panel such as WHM or Cpanel, not much comes up.

Your best bet is to use the search function from within the control panel to look up “Python.” From there, you might be able to see which version of Python is installed and running.

Checking the Version of Python from Within a Python Script

You may want to check the version of Python from within a Python script you are writing. Some of the reasons may be that you want to ensure compatibility with the Python interpreter, especially if the script is going to be run on different servers.

There is no one solution to this, as you can find various examples and ways to do this from within Python. It will also depend on which version of Python you are writing your programming script for.

You can check sites such as Stack Overflow, where developers can get into long and sometimes convoluted discussions on how best to do certain things with code.

In this Stack Overflow discussion about checking the Python version, you can find this potential solution for looking at the version from within a Python program:

# Method 1:

import sys
assert(sys.version_info >= (2,6))

?# Method 2:

import platform
from distutils.version import StrictVersion
assert(StrictVersion(platform.python_version()) >= "2.6")

?Note that this answer does not get as many votes as some of the solutions above. However, this answer was posted on November 16, 2017, making it a much more recent answer than the highest voted answer, which was originally posted in 2009.

This is why it is important to check the dates on Stack Overflow answers, because what is voted up the most may be due to its longevity on the website, when a more current answer with fewer votes may be the answer that works.

A Little Bit More About Python Versions

computer screen with programming codes

?Source: Pixabay

Python, like any living programming language, changes over time. As the team who maintains the code improves it and optimizes it, the syntax of the language may be modified.

Usually, these changes are not so overwhelming that you couldn’t understand a Python program from a different version. However, these changes could break your program or make it not work as expected.

Compatibility Between Python Versions

Python, like PHP, is an interpreted programming language. This means that Python is not compiled into an executable program before it is run.

Instead, it is “compiled on the fly” via the Python interpreter. Thus, the program will work until it hits up against some code that isn’t in compliance with the Python version the interpreter is using. Then, the program could hiccup, mess things up, or stop working entirely.

Usually, if you are using a Python version that is the same major version, but the interpreter has a different minor version, the hiccups will hopefully be minimal. However, if you are trying to run a Python program where the major version is different from the major version of the interpreter, it is often totally incompatible.

You especially have to pay attention any time a release is labeled as “backwards incompatible.” This means that it is totally not going to work with earlier versions of the software. Python 3.0 is backwards incompatible with Python 2.0.

However, some of the features of the 3.0 version of Python have been “backported” to Python versions 2.6 and 2.7 to make the code more compatible.

Major Versions vs. Minor Versions of Python

As with most programming languages and software applications, Python uses a numerical convention to distinguish between major and minor releases.

The major version is the number before the first period. The minor version is the number after the period, with an update to that minor version following the second period:


Thus, 3.2.5 is major version 3, minor version 2.5.

Also, a “zero” indicates the general major version. All variations of Python 3 (Python 3.1.0 or 3.5.1) are part of Python 3.0. All variations of Python 2 are part of Python 2.0, etc.

Here is a list of all Python versions:

Python Beta Version

An initial version of Python was released in 1991. This was 0.9.0 and not a full number 1, as it was not ready for prime time yet. These versions were released on the following schedule:

  • Python 0.9.0 - February 20, 1991
  • Python 0.9.1 - February, 1991
  • Python 0.9.2 - Autumn, 1991
  • Python 0.9.4 - December 24, 1991
  • Python 0.9.5 - January 2, 1992
  • Python 0.9.6 - April 6, 1992
  • Python 0.9.8 - January 9, 1993
  • Python 0.9.9 - July 29, 1993

?Python 1.0

The first official version of Python was launched in 1994.

  • Python 1.0 - January 1994
  • Python 1.2 - April 10, 1995
  • Python 1.3 - October 12, 1995
  • Python 1.4 - October 25, 1996
  • Python 1.5 - December 31, 1997
  • Python 1.6 - September 5, 2000

??Python 2.0

Released in 2000, Python 2.0 not only offered a whole host of new features, but the new version was transitioned to a community-based, collaborative open source language.

  • Python 2.0 - October 16, 2000
  • Python 2.1 - April 15, 2001
  • Python 2.2 - December 21, 2001
  • Python 2.3 - July 29, 2003
  • Python 2.4 - November 30, 2004
  • Python 2.5 - September 19, 2006
  • Python 2.6 - October 1, 2008
  • Python 2.7 - July 4, 2010

?Python 3.0

Python 3.0 is also known as "Python 3000" or "Py3K," and it is the current major version of Python.

  • Python 3.0 - December 3, 2008
  • Python 3.1 - June 27, 2009
  • Python 3.2 - February 20, 2011
  • Python 3.3 - September 29, 2012
  • Python 3.4 - March 16, 2014
  • Python 3.5 - September 13, 2015
  • Python 3.6 - December 23, 2016
  • Python 3.7 - June 27, 2018

?Don’t Forget to Check Python Version

programming codes on a cellular phone

?Source: Pixabay

Checking the Python version is easy, just remember to do this once in a while – perhaps by placing a reminder on your calendar.

You will need to keep the Python interpreter up to date to benefit from the latest features of the ever-evolving and constantly improving Python coding language.

Everything You Need to Know About MV Linux – User’s Guide

In UNIX and UNIX-like systems, mv (short for move) is a command used to move one or more files or directories from one location to another. The user executing the command must have write permissions for both the current directory and the destination directory for the argument to work, as mv changes the contents of both directories.

In some UNIX iteration, the commands cp, ln, and mv (copy, link, and move) are linked together at the binary level, giving the user mover leverage in deciding how to manipulate the file and/or directory. As with the command rm, switches like -i and -f are perfectly acceptable.

MV LINUX Nuts and Bolts

i switch

The -i switch will force mv to verify each mv ahead of time, but this becomes tedious with large batches of files for obvious reasons. Mostly, the use of rm is pretty straightforward, and, say, you wanted to move a file called playlist. Then just type in mv playlist, and - poof - it is gone out of one folder and appears in the destination.

Perhaps you were not sure about moving playlist2, however, so you would execute to command, rm -i playlist2 to prompt you to make sure moving the file is ok, and it will ask you to confirm your choice by typing “yes” three separate times.

Also, like rm, mv LINUX accepts the -f (force) switch, which will override permissions. But mv is much more powerful than being able to just move files, as it can rename and even back up file given the correct switch is called when the command is executed.

LINUX MV: Proceed with Caution

Terminal data

Write-protected files are your friend, and mv will prompt you before deleting them. You must answer yes three different time before they will be removed, and, also, a write-protected directory is even more difficult to move by design.

The command mv, like rm, works silently, and will not return a comment unless there is an error or necessary prompt. Unlike rm, though, it is inherently adept at dealing with folders, and it will handle any sort of file, folder, or directory on your HDD with ease.

Beware though, because unless you use the correct switch the data in the folder you are moving from could be deleted by the time mv is done copying over information. Take, for example, the following scenario of renaming /home/jojo/thingamajig to /home/jojo/thingamajig2 in the same folder.

Sure, you could say, just right-click and rename it, but let’s use the command-line. In terms of mv, that would be written as mv /home/jojo/thingamajig /home/jojo/thingamajig2, and, in terms of what LINUX understands you would be telling it to take the data from a file called thingamajig and move it to a new folder called thingamajig2. This would leave thingamajig empty with no data, and you could use rm -r to remove it.

MV LINUX Requires Brain Power

MV LINUX Requires Brain Power

That may seem like an overcomplicated process when you consider that, through the GUI, you can just drag and drop, but, nevertheless, that is what goes on under the LINUX hood. One blog, further posits that we, as users, have gotten into the habit of taking for granted many of the simple tasks that computers carry out on a daily basis.

Moving from Windows to LINUX or MAC OS to LINUX, or, even in some cases, from Windows to MAC OS can make you more aware of just how complicated computer files systems actually are, and using mv LINUX to move files is one of the most common conundrums for most new free-source OS users.

Beyond helping you keep in touch with the “old school” side of computers, there is a fair bit of raw power to access, as UNIX and UNIX-like systems use, essentially the same command-line brain under the hood. And the command arguments for mv LINUX are very good examples.

The mv LINUX command is very simple. It moves stuff. It moves stuff by moving stuff, and it moves stuff by renaming it. The power of mv LINUX is multiplied when you consider the use of wildcards. Take, for example, the following scenario, thank, in part to Computer Hope:

mv ~/Downloads/*.png /home/jojo/Documents/

Remember, too that moving up a level is easy by implementing the ../ call. So moving those .png files from /home/jojo/Documents/ to /home/jojo is a snap with the mv /home/jojo/Documents/ ../ argument.

Please note that if a file exists in the folder you are moving to with the same name as the file you are moving, it will be deleted unless you use the -b (backup switch).

There. Without too much effort you just moved all files with the .png extension from the Downloads folder to jojo’s Documents folder to his home folder with two single lines of code. Now that is power. And is more fun than dragging around files, don’t you think?



By this time, you already know there are about as many flavors of the LINUX GUI as there are flavors of ice cream at the local scoop shop.

On top of that, there are a lot of file managers you can use. And with them comes some popular file managers like KDE’s Dolphin or Gnome’s Nautilus. Both are powerful and flexible graphical interpretations of command line arguments.

They may not be as powerful as the simplicity of the command-line, but they are darn easy to use and just as effective. By and far, the protocol is the same but the following example was taken from an Ubuntu installation running Nautilus:

  • 1
    Open the file manager by clicking it.
  • 2
    Locate the file you intend to move, then right-click it.
  • 3
    A pop-up will appear, and you should choose the “Move To” option.
  • 4
    A follow-up window will open and need to navigate to the new destination.
  • 5
    Once you are there select that file, and you are done.

You can also move files to the Trash, copy, and more. Nautilus will function as a drag and drop manager as well, and you can avoid that second pop-up window, granted the destination is listed in the common places section of your file manager. If it is not, no worries, just pop open that second window, and you are good to go.

Single files, multiple files, it is pretty much the same argument under the hood, plus or minus a few characters. But LINUX file manager like Nautilus will save you the pain of having to learn the LINUX command line all at once. Just don’t rely on it too heavily, lest you miss the point of running mv LINUX and other commands in the first place.

LINUX MV Wrap-up


It should be apparent to you now, the mv LINUX is a powerful, if not basic, command that as important as rm, cp, ln, and other simple arguments. Plus, moving files about and renaming name is one of the most integral elements of any OS.

We've only touched the tip of the iceberg as far as examples of mv, so to read all about it, as always, just type man mv at the command-line for a better grasp on what it can do. Just remember that mv works with single files, multiple files, and directories. Plus, you can rename files, folders, and directories with it.

As for this blog, we hope we have at least perked your interest in using the command line to perform some of the most basic tasks on your computer. We have touched many of the command line options this tool offers. But, as with all UNIX and UNIX-liked command, they are flexible, can understand multiple switches, can be piped, and can be combined with other commands.

Hands working in the laptop

The possibilities with mv LINUX run quite deep, and it all depends how much you want to learn the command-line and use it regularly. Because, if you want to retain any of this knowledge, you have to use it - or it will disappear, and you will be right back in this tutorial (not that that is a bad thing).

But, if you practice and start with the basic commands, the command-line won’t seem so intimidating, you will want to practice more, and you will be well on your way to using piped arguments in no time at all.

So, start practicing now, move some files around, copy them, link them, and rm the old ones. Once you get going, you’ll wonder why they made the GUI at all.