Friday, February 2, 2018

A few other (advanced) differences between RHEL7 & RHEL6


Extracting initramfs image
---------------------------------------

Using "skipcpio" command in RHEL7.x, otherwise, we use "gunzip" in earlier RHEL versions. So, the command to extract initramfs image file in RHEL7.x is given below:

# /usr/lib/dracut/skipcpio /boot/initramfs-$(uname -r).img | gunzip -c | cpio -id

In earlier versions, we could do this by using the command gunzip :

# gunzip -c /boot/initramfs-$(uname -r).img | cpio -i -d


Default Inode size
---------------------------

In case of XFS file system this has been changed to “512 bytes” which is “256 bytes” in RHEL6.x version.


--> RHEL7.x

  [root@managed1 ]# xfs_info /dev/sda1|grep isize


  meta-data=/dev/sda1 isize=512 agcount=4, agsize=65536 blks


--> RHEL6.x

  [root@local ~]# tune2fs -l /dev/sda1|grep -i 'inode size'


  Inode size: 256


iostat command
-------------------------

Now, in RHEL7.x there is a separate ‘r_await’ (read await) & ‘w_await’ (write await) added along with "await" which produces total (changed in sysstat version 10) in the 'iostat' command. It is just the "await" parameter to get total average time in milliseconds in case of RHEL6.x version.


Network persistent device file deprecated
------------------------------------------------------------

There is no such file which maintains persistent network/device names as seen in earlier versions. It has been deprecated. [https://access.redhat.com/solutions/1554703]. This was maintained by "/etc/udev/rules.d/70-persistent-network.rules" file in earlier versions.


free command
----------------------

Now, the “used” column of “free” command calculates used memory size by considering “buffers/cache” value as well. So, in RHEL7.x version it is “used = total - free - buff/cache”. In earlier version it is “used = total - free”.


“tuned” installed by default
----------------------------------------

The “tuned” package is installed and service is started unless disabled during installation. This has to be installed in earlier versions.


resizing LVM
----------------------

As with XFS file system, resize is not possible (can't be reduced, however, file system can be increased) (https://access.redhat.com/solutions/540013). However, EXT family of file systems could be resized if built on a logical volume as a block device.


Important Changes in GRUB2
----------------------------------------

- From RHEL7 on-wards the main GRUB configuration file is 'grub.cfg' which was 'grub.conf' in earlier versions. - The 'grub.cfg' file could be generated easily using the command "grub2-mkconfig" which makes easy to handle kernel upgrades as well. - There are no 'stage1', 'stage1.5' and 'stage2' files in GRUB2. - GRUB 2 can read files directly from LVM and RAID devices. - Partition numbers in GRUB device names now start at 1, not 0


"dmesg" can print time-stamp along with data
-----------------------------------------------------------------

The new "util-linux" package to which "dmesg" command belongs to can print timestamp along with messages as stored in ‘/var/log/dmesg’. Now, users can print human readable kernel ring buffer messages using "dmesg -T" command. Most of the user utility commands under ‘/bin’ are moved to ‘/usr/bin’ in RHEL7 architecture.

In case of RHEL6, "dmesg" command was from the "util-linux-ng" package and which by default doesn't record time stamp and hence, data produced doesn't state when those was messages generated.


"Btrfs" has been deprecated from RHEL7.4 on-wards
--------------------------------------------------------------------------

The "Btrfs" was made available as technology preview since RHEL6 and now Red Hat has decided to remove it from future release of RHEL7.4 on-wards.


Change in wheel group membership
----------------------------------------------------

Any users added as members of the "wheel" group would by default get to execute root (administrative) commands by using 'sudo' and authenticate with their own password. However, in RHEL6, an administrator has to un-comment the line in ‘/etc/sudoers’ file so that the wheel group users could get to run root commands.


Yum groups is more meaningful now
-----------------------------------------------------

There is a change in how 'yum grouplist' or 'yum groupinfo' command works in RHEL7. Information about a group could be displayed by using 'yum groupinfo <Group_name>' or 'yum group info <Group_name>' commands. Likewise, 'yum grouplist' or 'yum group list' would show the installed & available groups.  

The 'yum groupinfo' command would list out mandatory, default & optional packages with an indicator prefix i.e '=' (which signifies that package installed as part of group), '+' (this says that package not installed and will be installed if group is installed or updated), '-' (indicates that package is not installed, will not be installed if group is installed or updated), no marker (package is installed, but not installed as part of groupinstall).




Root password is required to boot into rescue target
---------------------------------------------------------------------------

Since the concept of 'runlevel' changed in RHEL7 to 'targets', if a user wish to boot the system into rescue mode to resolve any early boot issues, then need to append required target as kernel parameter. Being said that, there is "rescue.target" & "emergency.target" could be used. So, to boot system into "rescue.target", append "systemd.unit=rescue.target" to the respective kernel command line and hit "Ctrl+x".

In earlier version, root shell would by default gets presented when booted into runlevel 1 or rescue or emergency mode, however, in RHEL7 root password is required to successfully boot into 'rescue.target' or 'emergency.target'.

Changes in High Availability (HA) components
---------------------------------------------------------------

Configuration file change: The cluster configuration file was '/etc/cluster/cluster.conf' in RHEL6 and earlier versions. However, in RHEL7 on-wards it is '/etc/corosync/corosync.conf' & '/var/lib/pacemaker/cib/cib.xml'.

Command Line Operations: There was "ccs" command line tool available earlier and we have "pcs" in RHEL7 on-wards i.e in pacemaker cluster.

User Access: Earlier, there was "luci" interface available for Web UI which needs "ricci" password, and root or any other user with proper permission were allowed the access. In RHEL7 on-wards, access to Web UI (pscd) requires user "hacluster" as a common user. Root user can set the password for "hacluster" user.

Sendmail and dmraid has been deprecated
--------------------------------------------------------------

Since the release of RHEL7, the ‘sendmail’ MTA has been deprecated and ‘postfix’ is the default MTA. The ‘dmraid’ has been removed since from the release of RHEL 7.5 version.

To view all functions/features which are deprecated in RHEL7, please visit the below link:


2 comments:

Anonymous said...

great document, helps understanding some things. However the LVM resize is not entirely correct. RedHat say only reducing size is not possible on xfs filesystem, grow while mounted still works.

SimplyLinuxFAQ said...

Yes, that is correct. I had missed to fine-tune my statement, which I've corrected now. Thanks for bringing to my notice.