Migrating from RHEL6 to RHEL7? Biggest Changes List (Also mostly applies to migration from CentOS6 to CentOS7)

There are a number of rather significant changes to design and behavior in RedHat Enterprise Linux 7 ( RHEL7 ) as compared to RedHat Enterprise Linux 6 ( RHEL6 ).

The following changed systems and behaviors exist in RHEL7:

  1. The old ‘SYSV’ init system has been replaced by ‘systemd’
    1. This is much faster at startup/shutdown
    2. It has the concept of service dependencies
    3. It uses a different structure for init files than the old system
  2. Default File System is now XFS
    1. fully-journaled
    2. support for 500TB File Systems
    3. No actual “fsck” operation is done at boot time
      1. though a stub that doesn’t do anything is executed
    4. If an error is detected in the filesystem metadata
      1. The file-system will be shut down and return an EFSCORRUPTED error
        The xfs_repair command can be used to repair this form of error
        The journal/log must be clean for xfs_repair to operate
        The mount and unmount cmds must first be used to ‘replay the log’
    5. The file-system inode numbers can exceed 2^32
      1. This should not be an issue, except for 32-bit stat calls
      2. A mount parameter “-o inode32” exists for compatibility purposes
    6. Speculative-Preallocation is used and helps prevent fragmentation
      1. If a preallocation is not used, it is recycled after 5 minutes
      2. However, this can also temporarily increase disk % usage, causing “ENOSPC” (No-Space-Remaining) errors
      3. A mount option “-o allocsize=amount” exists that can be used to work around excessive preallocation
  3. The ext4 file-system now supports 50TB FS (up from 16TB on 64-bit RHEL6.x)
  4. Network Devices are now subject to “Consistent Network Device Naming”
    1. which means that the device previously identified as ‘eth0’ will likely be called ‘eno1’ or ‘ens192’ (Dell and VMware, respectively)
  5. NetworkManager is now the default command-line tool for managing interfaces
    1. The “ifconfig” command is not installed by default
      1. this can cause issues with VMware tools installation
      2. can be installed using yum install net-tools
    2. There is a “pifconfig” command
      1. that is installed by default (on RHEL7 but not on CentOS7?)
      2. it is a python-based ifconfig-alike utility
      3. not sure if it can make changes or just show current config
    3. The “ip” and Network-Manager CLI (“nmcli”) commands exist for network configuration
  6. The ‘iptables’ system has been, by default, replaced by ‘firewalld’
    1. The name of the service is “firewalld”
    2. Firewalld introduces the concept of “zones”; Interfaces can be divided into zones
    3. A good ‘getting-started-with-firewalld’ guide is located at http://www.certdepot.net/rhel7-get-started-firewalld

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s