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
RHEL7 | RHEL6 |
---|---|
3.10.x-x kernel | 2.6.x-x Kernel |
3. Kernel Code Name
RHEL7 | RHEL6 |
---|---|
Maipo | Santiago |
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
RHEL7 | RHEL6 |
---|---|
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.
RHEL7 | RHEL6 |
---|---|
/etc/hostname | /etc/sysconfig/network |
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.
RHEL7 | RHEL6 |
---|---|
1000 | 500 |
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:
RHEL7 | RHEL6 |
---|---|
xfs_repair | e2fsck |
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:
RHEL7 | RHEL6 |
---|---|
Maximum (individual) file size = 500TB | Maximum (individual) file size = 16TB |
Maximum filesystem size = 500TB | Maximum 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
RHEL7 | RHEL6 |
---|---|
Pacemaker | Rgmanager |
13. Load Balancer Technology
RHEL7 | RHEL6 |
---|---|
Keepalived and HAProxy | Piranha |
14. Desktop/GUI Interface
RHEL7 | RHEL6 |
---|---|
GNOME3 and KDE 4.10 | GNOME2 |
15. Default Database
RHEL7 | RHEL6 |
---|---|
MariaDB is the default implementation of MySQL in RHEL7 | MySQL |
A few more things are there. I’ll update it later!!