Differences between RHEL 7 and 6
|Features||RHEL 7||RHEL 6|
|Default File System||XFS||EXT4|
|Kernel Version||3.10.x-x kernel||2.6.x-x Kernel|
|Kernel Code Name||Maipo||Santiago|
|General Availability Date of First Major Release||2014-06-09 (Kernel Version 3.10.0-123)||2010-11-09 (Kernel Version 2.6.32-71)|
|First Process||systemd (process ID 1)||init (process ID 1)|
|Runlevel||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
/etc/systemd/system/default.target (this by default is linked to the multi-user target)
|Traditional runlevels defined :
and the default runlevel would be defined in “/etc/inittab” file.
|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.|
|Change In UID Allocation||By default a new user created would get UIDs assigned starting from 1000.
This could be changed in “/etc/login.defs” file if required.
|Default UID assigned to users would start from 500.
This could be changed in “/etc/login.defs” file if required.
|Max Supported File Size||Maximum (individual) file size = 500TB
Maximum filesystem size = 500TB
(This maximum file size is only on 64-bit machines. Red Hat Enterprise Linux does not support XFS on 32-bit machines.)
|Maximum (individual) file size = 16TB
Maximum filesystem size = 16TB
(This maximum file size is based on a 64-bit machine. On a 32-bit machine, the maximum files size is 8TB.)
|File System Check||“xfs_repair”
XFS does not run a file system check at boot time.
File system check would gets executed at boot time.
|Differences Between xfs_repair & e2fsck||“xfs_repair”
– Inode and inode blockmap (addressing) checks.
– Inode allocation map checks.
– Inode size checks.
– Directory checks.
– Pathname checks.
– Link count checks.
– Freemap checks.
– Super block checks.
– Inode, block, and size checks.
– Directory structure checks.
– Directory connectivity checks.
– Reference count checks.
– Group summary info checks.
|Difference Between xfs_growfs & resize2fs||“xfs_growfs”
xfs_growfs takes mount point as arguments.
resize2fs takes logical volume name as arguments.
|Change In File System Structure||/bin, /sbin, /lib, and /lib64 are now nested under /usr.||/bin, /sbin, /lib, and /lib64 are usually under /|
|Boot Loader||GRUB 2
Supports GPT, additional firmware types, including BIOS, EFI and OpenFirmware. Ability to boot on various file systems (xfs, ext4, ntfs, hfs+, raid, etc)
|KDUMP||RHEL7 supports kdump on large memory based systems up to 3 TB||Kdump doesn’t work properly with large RAM based systems.|
|System & Service Manager||“Systemd”
systemd is a system and service manager for Linux, and replaces SysV and Upstart used in previous releases of Red Hat Enterprise Linux. systemd is compatible with SysV and Linux Standard Base init scripts.
|Enable/Start Service||For RHEL 7, the systemctl command replaces service and chkconfig.
– Start Service : “systemctl start nfs-server.service”.
– Enable Service : To enable the service (example: nfs service ) to start automatically on boot : “systemctl enable nfs-server.service”.
Although one can still use the service and chkconfig commands to start/stop and enable/disable services, respectively, they
are not 100% compatible with the RHEL 7 systemctl command
|Using “service” command and “chkconfig” commands.
– Start Service : “service start nfs” OR “/etc/init.d/nfs start”
– Enable Service : To start with specific runlevel : “chkconfig –level 3 5 nfs on”
|Default Firewall||“Firewalld (Dynamic Firewall)”
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.
|Network Bonding||“Team Driver”
|Network Time Synchronization||Using Chrony suite (faster time sync compared with ntpd)||Using ntpd|
NFSv2 is no longer supported. Red Hat Enterprise Linux 7 supports NFSv3, NFSv4.0, and NVSv4.1 clients.
|Cluster Resource Manager||Pacemaker||Rgmanager|
|Load Balancer Technology||Keepalived and HAProxy||Piranha|
|Desktop/GUI Interface||GNOME3 and KDE 4.10||GNOME2|
|Default Database||MariaDB is the default implementation of MySQL in Red Hat Enterprise Linux 7||MySQL|
|Managing Temporary Files||RHEL 7 uses systemd-tmpfiles (more structured, and configurable, method to manage tmp files and directories).||Using “tmpwatch”|
|Introduction of Docker||Docker is an open source project that automates the deployment of applications inside Linux Containers, and provides the capability to package an application with its run time dependencies into a container.|
|Device Hot-plug Removed||While RHEL 5/6 has device hot-plug support (udev rule that runs the ifup script for newly created devices), it has been disabled for RHEL 7 since it can result in race conditions when initializing newly found.|
|No 32 Bit ISO Image||No 32 bit ISO for download. Red Hat Enterprise Linux 7 will only provide 64-bit ISO’s, thus allowing only a 64-bit operating environment. RHEL 7 will not natively support 32-bit hardware.|
|“MemAvailable” Added to /proc/meminfo||A new entry to the /proc/meminfo file has been introduced to provide the MemAvailable field. MemAvailable provides an estimate of how much memory is available for starting new applications, without swapping. However, unlike the data provided by the Cache or Free fields, MemAvailable takes into account page cache and also that not all reclaimable memory slabs will be reclaimable due to items being in use.|
|New Ruby and Python Versions||Red Hat Enterprise Linux 7 provides the latest Ruby version, 2.0.0 and Python 2.7.5.|
|OpenJDK7 Made Default||Red Hat Enterprise Linux 7 features OpenJDK7 as the default Java Development Kit (JDK) and Java 7 as the default Java version.|
|More Powerful NetworkManager||NetworkManager has been significantly enhanced to configure and monitor all the networking features for enterprise class servers and for desktop applications.
For the enterprise data centers, NetworkManager can be used for tasks such as basic networking configuration, network teaming, configuring virtual LANs, bridges, bonds, IPv6, VPNs, assigning interfaces to firewall zones, and others. For desktop servers it can manage wired and wireless networks and VPNs.
|Support for 40 Gigabit NICs||Red Hat Enterprise Linux 7 supports 40 Gigabit network interface controllers (NICs) from multiple hardware partners. This provides support for 40 Gigabit Ethernet link speeds enabling faster network communication for applications and systems. Note that the ethtool utility will report interface link speeds up to 40Gb data rates.|
|No RHN Classic||RHN Classic is not supported in RHEL7. Older versions supported different subscription management methods. Red Hat Subscription Management is the only one used by RHEL 7.|
|OpenSSH – Multiple Required Authentications||Red Hat Enterprise Linux 7 supports multiple required authentications in SSH protocol version 2 using the AuthenticationMethods option. This option lists one or more comma-separated lists of authentication method names. Successful completion of all the methods in any list is required for authentication to complete.|
|Minimum Disk Space for Installation of RHEL7||Red Hat Enterprise Linux 7 now requires at least 1 GB of disk space to install. However, Red Hat recommends a minimum of 5 GB of disk space for all supported architectures.|
|Implementation of tmpfs file system||Red Hat Enterprise Linux 7 offers the ability to use /tmp as a mount point for a temporary file storage system (tmpfs).
When enabled, this temporary storage appears as a mounted file system, but stores its content in volatile memory instead of on a persistent storage device. No files in /tmp are stored on the hard drive except when memory is low, in which case swap space is used. This means that the contents of /tmp are not persisted across a reboot.
|In-place upgrade, now supported||Now, in-place upgrade from RHEL 6 is supported to RHEL 7 (Reference: https://access.redhat.com/solutions/637583).|
|Dracut used by Anaconda||Anaconda would use “Dracut” to configure disks during installation (GUI) in RHEL 7.x which was earlier performed by utility called “disk druid”.|
|New Logging Framework||Red Hat Enterprise Linux 7 introduces a new logging daemon, journald, as part of the move to systemd.
journald captures the following types of message for all services:
– syslog messages
– kernel messages
– initial RAM disk and early boot messages
– messages sent to standard output and standard error output.
|Samba 4 fully supported||RHEL 7 provides Samba 4, bundle of utilities, features, python bindings which allows communications using SMB1, SMB2 & SMB3 protocols. In RHEL 6.4 and later versions, Samba 4 was provided as Technology Preview.|
|Non-root user process limitations||In RHEL 6.x, non-root users were resitricted to a total of 1024 processes per PAM session. In RHEL 7.x, this has been increased to 4096 processes per PAM session by default.|
|PCS replaces luci||The high availability management agent “luci” has been replaced by “pcs” in RHEL 7. Now, “pcs” can controls pacemaker-based clusters only, not rgmanager-based cluster setups.|
|Default IO Scheduler||“deadline” is now the default IO scheduler in RHEL 7.x (except SATA drives) which was earlier “cfq” by default.|
|Changes to mount options||Unlike ext3 and ext4, the XFS file system enables the user_xattr and acl mount options by default. Ext3 and ext4 file systems do not enable these attributes by default.|