What’s new on RHEL7/CentOS7?

Why this topic?

Yeah.. The Linux is already updated. This new version (RHEL and CentOS 7) has a lot of changes. It’s time that we had a discussion on this topic. As we all know, RHEL is one of the most commonly using commercial Linux distribution developed by Red Hat team. Red Hat Enterprise Linux is released in server versions for x86, x86-64, Itanium, PowerPC and IBM System z, and desktop versions for x86 and x86-64.

RHEL (Red Hat Enterprise Linux) version 7 is already released. Here we are going to list top differences between RHEL 7 and its previous version RHEL6. There are many differences and implementations on RHEL version 7 by comparing with its older versions like RHEL6.

Okay.. let’s start it one by one!

Differences between RHEL 6 or CentOS 6 and RHEL 7 or CentOS 7

1. Default File System

A file system is a logical collection of files on a partition or disk. A partition is a container for information and can span an entire hard drive if desired. Yeah, this is one of the main difference by comparing with other versions of RHEL. In RHEL7, the default file system is XFS. In RHEL6, the default file system is EXT4.

Which is created by Silicon Graphics International, XFS has long been in production use with Linux systems, and on RHEL 7 it’ll support file systems of up to 500TB in size. RHEL 6 used ext4 as the default, although it shipped with XFS as an option.

2. Kernel Version

3.10.x-x kernel2.6.x-x Kernel

3. Kernel Code Name


4. First Process

This is very important. We all know about the first process while booting up a Linux server, which is INIT with process ID 1. Here we can see the difference, in RHEL 7, the first process is systemd with PID 1

systemd (process ID 1)init (process ID 1)

5. Runlevel

Yeah, we all know different runlevels in a Linux system, which are runlevel0 – runlevel6. A total of 7 runlevels. In RHEL7, runlevels are called as “targets” as shown below:

runlevel0.target -> poweroff.target
runlevel1.target -> rescue.target
runlevel2.target -> multi-user.target
runlevel3.target -> multi-user.target
runlevel4.target -> multi-user.target
runlevel5.target -> graphical.target
runlevel6.target -> reboot.target

And different runlevels in RHEL6 are;

runlevel 0
runlevel 1
runlevel 2
runlevel 3
runlevel 4
runlevel 5
runlevel 6

The default runlevel would be defined in /etc/inittab file.

6. Host Name Change

In Red Hat Enterprise Linux 7, as part of the move to the new init system (systemd), the hostname variable is defined in /etc/hostname file. In Red Hat Enterprise Linux 6, the hostname variable was defined in the /etc/sysconfig/network configuration file.


7. Change In UID Allocation

Till RHEL 6, the UID of a new user starts from 500. This could be changed in /etc/login.defs if required. From RHEL7, any new users created would get UIDs assigned starting from 1000. This could also be changed in /etc/login.defs if required.


8. File System Check

Do not affraid about FSCK while rebooting the server which has latest RHEL 7. XFS does not run a file system check at boot time. In RHEL6, file system check would gets executed at boot time.

Commands for File System Check:


There are a lot of advantages with the xfs_repair. Here we are listing some of them:

8.1  Inode and inode blockmap (addressing) checks.
8.2  Inode allocation map checks.
8.3  Inode size checks.
8.4  Directory checks.
8.5  Pathname checks.
8.6  Link count checks.
8.7  Freemap checks.
8.8  Super block checks.

9. Max Supported File Size

There are also noticeable differences in File Size too. Important changes are listed below:

Maximum (individual) file size = 500TB
Maximum (individual) file size = 16TB
Maximum filesystem size = 500TBMaximum filesystem size = 16TB

10. Change In File System Structure

Yeah, some changes are also there with dafault File System Structure. /bin, /sbin, /lib, and /lib64 are now nested under /usr. In older versions /bin, /sbin, /lib, and /lib64 are usually under /.

11. Firewall

What is the default firewall in Linux? Yeah we know its answer!! iptables. In RHEL 7, it’s Firewalld. The built-in configuration is located under the /usr/lib/firewalld directory. The configuration that you can customize is under the /etc/firewalld directory. It is not possible to use Firewalld and Iptables at the same time. But it is still possible to disable Firewalld and use Iptables as before.

12. Cluster Resource Manager


13. Load Balancer Technology

Keepalived and HAProxy Piranha

14. Desktop/GUI Interface


15. Default Database

MariaDB is the default implementation of MySQL in RHEL7MySQL

A few more things  are there. I’ll update it later!!


Post navigation

Arunlal Ashok

DevOps Engineer at Zeta Suite. Linux lover. Traveller. Father of two princesses.

Always happy for an open discussion! Write to arun ((@)) crybit ((dot)) com.
LinkedIn: https://www.linkedin.com/in/arunlal-a-18037773/

Leave a Reply

Your email address will not be published. Required fields are marked *