This page would list out the major differences between RHEL 8 and 7 variants and key features in RHEL 8. Red Hat has changed the company logo recently and RHEL 8 GA is also out in the market.
|Features||RHEL 8||RHEL 7|
|Default File System||XFS||XFS|
|Kernel Code Name||Ootpa||Maipo|
|General Availability Date of First Major Release||2019-05-07 (Kernel Version 4.18.0-80)||2014-06-09 (Kernel Version 3.10.0-123)|
|Standard/Default Repo Channels||Repo ID: rhel-8-for-x86_64-appstream-rpms|
Repo Name: Red Hat Enterprise Linux 8 for x86_64 - AppStream (RPMs)
Repo ID: rhel-8-for-x86_64-baseos-rpms
Repo Name: Red Hat Enterprise Linux 8 for x86_64 - BaseOS (RPMs)
|Repo ID: rhel-7-server-rpms|
Repo Name: Red Hat Enterprise Linux 7 Server (RPMs)
|Network Time Synchronization||Using only Chronyd. The ntp implemenation is not supported in RHEL8.|
Using either ntp or chronyd.
|Maximum Supported File Size||The maximum supported size of an XFS file system has been increased from 500 TiB to 1024 TiB.|
(This maximum file size is only on 64-bit machines. Red Hat Enterprise Linux does not support XFS on 32-bit machines.)
|Max. (individual) file size = 500TiB|
Max. filesystem size = 500TiB
|Package/Software Management||Package management is done by DNF (YUMv4).|
Yum is based on DNF technology and yum command provides backward compatibility with YUM v3 being used in earlier versions. The yum command is just a symbolic link to dnf.
Yum being used and it is based on version 3.0.x
|Max. RAM Supported|
( * on x86_64 architecture)
|Change in default network packet filtering||The "nftables" is the default network packet filtering which has replaced earlier "iptables" framework. The firewalld daemon now uses nftables as its default backend.|
This would replace the earlier used ‘iptables’, ‘ip6tables’, ‘arptables’ & ‘ebtables’ tools. The ‘nftables’ does provide a single frame work for both IPv4 & IPv6 protocols.
The firewalld daemon uses iptables as its default backend.
|Default Database||The following database servers are available in RHEL8:|
- MySQL 8.0
- MariaDB 10.3
- PostgreSQL 10 and PostgreSQL 9.6
- Redis 5.0
MariaDB is the default implementation of MySQL in Red Hat Enterprise Linux 7
|Supported Hardware Architecture||The following architectures are supported:|
- AMD and Intel 64-bit architectures
- The 64-bit ARM architecture
- IBM Power Systems, Little Endian
- IBM Z
| - 64-bit AMD|
- 64-bit Intel
- IBM POWER7
- IBM System z
|ISO Image Types Available for installation||RHEL 8 can be installed using the following types of ISO images:|
- Binary DVD ISO
- Boot ISO
|In RHEL7, installation could be done using the following ISO images available:|
- Boot ISO
- Binary DVD ISO
- Supplementary Binary DVD
|The Cockpit web console is available by default||Cockpit is now installed by default and available. This gets installed automatically on non-minimal mode and required ports gets enabled in firewall.|
The "Cockpit" provides an enhanced framework which can be used to access/edit/change many system settings. This provides access over a web interface which can be launched using http://<hostname>:9090 url.
|Not installed by default, need to install by enabling 'extras' & 'optional' repository channels.|
|Virtual Machines Management||By default it is managed by cockpit. If required virt-manager could also be installed.||virt-manager would be available for virtual systems management based on KVM.|
|Much improved RPM version||Red Hat Enterprise Linux 8 is distributed with RPM 4.14. RPM now validates the entire package contents before starting an installation.|
This got many improvements and some of the notable features are:
- The debuginfo packages can be installed in parallel
- Support for weak dependencies
- Support for rich or boolean dependencies
- Support for packaging files above 4 GB in size
- Support for file triggers
Packages built on RHEL8 use a new SHA-256 hash on the compressed payload.
|Red Hat Enterprise Linux 7 is distributed with RPM 4.11.|
On Red Hat Enterprise Linux 7, the RPM utility verified payload contents of individual files while unpacking.
|CUPS log||All types of CUPS logs are centrally-logged in the systemd journald daemon together with logs from other programs. To access the CUPS logs, use the 'journalctl -u cups' command.|
CUPS logs are stored under /var/log/cups directory.
|The nobody user replaces nfsnobody||The 'nobody' & 'nfsnobody' user and groups are merged into 'nobody' ID (65534).||In Red Hat Enterprise Linux 7, there was:|
- the nobody user & group pair with the ID of 99
- the nfsnobody user & group pair with the ID of 65534, which is the default kernel overflow ID, too.
|Different Version Control Systems available||RHEL 8 provides the following version control systems:|
- Git 2.18
- Mercurial 4.8
- Subversion 1.10
Both Concurrent Versions System (CVS) and Revision Control System (RCS) are not available in RHEL8.
Red Hat Enterprise Linux 7 is distributed with three of the most popular open-source revision control systems: Git, SVN, and CVS.
|New version of Programming Languages|| - Python 3|
- PHP 7.2
- Ruby 2.5
- Node.js 10
| - Python 2 ( 2.7.X)|
- PHP 5.4
- Ruby 2.0.0
|Changes in Container technology||Docker is not included in RHEL 8.0. For working with containers, need to use podman, buildah, skopeo, and runc tools.|
The podman tool has been released as a fully supported feature.
Docker and Docker Registry were released as part of the Extras channel in Red Hat Enterprise Linux 7.
|Development Tools Supported||RHEL 8 provides OpenJDK 11, OpenJDK 8, IcedTea-Web, and various Java tools, such as Ant, Maven, or Scala.||In RHEL7, OpenJDK8 was used as the default Java Development Kit (JDK) and Java 8 as the default Java version.|
|Changes in NFS||The NFS configuration file is "/etc/nfs.conf".|
Red Hat Enterprise Linux 8 attempts to automatically convert all options from "/etc/sysconfig/nfs" to "/etc/nfs.conf" when upgrading from RHEL7.
NFS over UDP is no longer supported.
The default NFS configuration file is '/etc/sysconfig/nfs'.
The default display server is ‘Wayland’ used by Gnome Display Manager in RHEL 8.
|X.Org server is the default display server in RHEL 7|
Default IO Scheduler
Default I/O scheduler in RHEL8 is 'mq-deadline'.
There are 4 schedulers available: mq-deadline, kyber, bfq, & none.
| "deadline" is the default IO scheduler. |
|The elevator kernel command line parameter is deprecated||The elevator kernel command line parameter was used in earlier RHEL releases to set the disk scheduler for all devices. In RHEL 8, the parameter is deprecated.|
The upstream Linux kernel has removed support for the elevator parameter, but it is still available in RHEL 8 for compatibility reasons.
|The network scripts are deprecated||The network scripts are not available by default in RHEL 8. There is a new version of 'ifup' & 'ifdown' being used which would need the NetworkManager daemon to be running and uses "nmcli" in the back-end.|
If earlier network scripts needed then one has to install 'network-scripts' package.
|New kernel supports 5-level paging||In earlier version there was 4-level paging implementation which could address 48/46 bit of virtual/physical addresses, and there was an upper physical bus limit to 64TB. With the upcoming Intel processors, these limits have been extended to 57/52 bit of virtual/physical memory addressing with 128 PiB of virtual address space and 4 PB of physical memory capacity.|
|Anaconda supports System Purpose in RHEL 8||Previously, Anaconda did not provide system purpose information to Subscription Manager. In Red Hat Enterprise Linux 8.0, you can set the intended purpose of the system during installation by using Anaconda’s System Purpose window or Kickstart’s syspurpose command.|
|CodeReady Linux Builder Repository||There is CodeReady Linux Builder repository which is available with all RHEL subscriptions. This supplies additional packages required by developers. Packages included in the CodeReady Linux Builder repository are not supported for production use.|
|Much improved version of OpenSSH||The OpenSSH is of version 7.8p1 which has many improvements compared with earlier version. A few of them are:|
- SSH version 1 is not supported.
- UseDNS is by default set to 'no'.
- Minimal accepted RSA key size is set to 1024 bits.
- Removed 'Blowfish', 'CAST', 'RC4' ciphers.
- DSA public key algorithm is disabled by default.
|Numeric username and groupnames are not supported in RHEL8||The useradd and groupadd commands disallow user and group names consisting purely of numeric characters. This was a deprecated feature in RHEL7 and their support is completely removed in RHEL8 now.|
|securetty is now disabled by default||The securetty PAM module has been disabled by default and the '/etc/securetty' file has been removed from RHEL8.|
|Improved TCP networking stack||RHEL 8 has got the TCP networking stack version 4.18, which could provide higher performances, better scalability, and more stability. Performances are boosted especially for busy TCP server with a high ingress connection rate.|
In addition to the new TCP stack, there are two new TCP congestion algorithms available i.e BBR & NV which could offer lower latency, and better throughput than cubic in most scenarios.
|High Availability (HA)||In Red Hat Enterprise Linux 8, pcs fully supports the Corosync 3 cluster engine and the Kronosnet (knet) network abstraction layer for cluster communication. In-place upgrade of a cluster node from RHEL7 to RHEL8 not possible.|
|The lvmlockd replaces clvmd||The clvmd which was used to manage shared storage logical volumes has been removed and instead there is 'lvmlockd' (lvm lock daemon) available.|
|……………..…………. *all these details are collected from Red Hat official site.|