How do I migrate from RHEL5 to RHEL7?



How do I migrate from RHEL5 to RHEL7?

Contents
7.    Networking
9.    Clustering
10.  Desktop
This article covers the major differences between version 5 and version 7 of Red Hat Enterprise Linux, to assist customers who have recently moved versions, or are planning to move versions soon.
Upgrade support restrictions
Red Hat does not support upgrading directly from RHEL 5 to RHEL 7. However, if you intend to move from RHEL 5 to RHEL 7 by backing up your data and restoring data on a fresh installation of RHEL 7, these notes will help you understand the major changes between these distributions.
Note that RHEL 7 is supported on a limited number of architectures; see the RHEL 7 Release Notes for details.




Hardware requirements and support
Red Hat Enterprise Linux 7 requires:
  • 10 GiB minimum disk space (20 GiB recommended)
  • 1 GiB minimum memory (1 GiB per logical core recommended)
Hardware that was certified under Red Hat Enterprise Linux 5 may not be certified under Red Hat Enterprise Linux 7. Check for your hardware at Red Hat Customer Portal Hardware Certification before you upgrade.
For other requirement and support details, see Red Hat Enterprise Linux technology capabilities and limits.
Subscriptions
Subscriptions are now handled through the subscription-manager tool. While subscription-manager and rhn_register are interoperable, a single system can only be registered to one of these services at a time. There are some extenuating circumstances here; see footnotes for details1 3.
Task
RHEL5
RHEL7
View subscription information
/etc/sysconfig/rhn/systemid
subscription-manager identity
Configure subscription
rhn_register1
subscription-manager2
rhn_register 
3
Kernel, boot, and init
The init system has undergone several large changes between RHEL 5 and RHEL 7.
  • The boot loader has been updated to GRUB2. This update removes support for installing the boot loader to a formatted partition on BIOS machines with MBR-style partition tables. This behavior change was made because some file systems have automated optimisation features that move parts of the core boot loader image, which could break the GRUB legacy boot loader. With GRUB2, the boot loader is installed in the space available between the partition table and the first partition on BIOS machines with MBR-style partition tables. BIOS machines with GPT-style partition tables can avoid this problem by creating a special BIOS Boot Partition for the boot loader. UEFI machines continue to install the boot loader to the EFI System Partition. See Section 6.10.1.1 MBR and GPT Considerations in the RHEL7 Installation Guide for related considerations for MBR- and GPT-style partitioning schemes. See Section 3.2.1 New Boot Loader in the RHEL7 Migration Planning Guide for further details about the move from GRUB legacy to GRUB2. 
    The recommended minimum partition sizes have also changed as a result of the new boot loader. The table below gives a summary of the new recommendations. Further information is available in
     Section 6.10.1.1 MBR and GPT Considerations of theRed Hat Enterprise Linux 7 Installation Guide.
Partition
BIOS & MBR
BIOS & GPT
UEFI & GPT
/boot
500 MB
/
10 GB
swap
At least twice the RAM. See Section 6.10.4.5. Recommended Partitioning Scheme in the Red Hat Enterprise Linux 7 Installation Guide for details.
boot loader
N/A (Installed between the partition table and the first partition)
1 MB (BIOS Boot Partition)
200 MB (EFI System Partition
  • Systemd replaces the SysV init system, allowing greater control over process startup and helps minimize startup time. An overview is available here.
    • While systemd is designed to be compatible with SysV init scripts, compatibility is limited in some cases; see Section 3.2.2.1 Backwards Compatibility in the RHEL7 Migration Planning Guide for details.
    • The systemd administrative tool, systemctl, changes many administrative commands, as outlined in this cheat sheet.
    • Run levels have been replaced with targets, which can be customised similar to previously supported run levels 7, 8, and 9. See the System Administrator's Guide for a detailed explanation.
    • See this collection of systemd resources for more information.
  • Significant changes to boot parameters; see Section 3.2.3.1 Boot Parameter Changes in the RHEL7 Migration Planning Guide for details.
  • Graphical mode initialization now assigned to the kernel via kernel modesetting; disable with nomodeset parameter at kernel cmdline.




Task
RHEL5
RHEL7
View run level/target
runlevel
who -r
systemctl get-default
who -r
Change run level/target
/etc/inittab
init run_level
systemctl isolate name.target
systemctl set-default
Configure default run level/target
/etc/inittab
systemctl set-default
Single user/rescue mode
append 1 or s or init=/bin/bash to kernel cmdline
append rd.break or init=/bin/bash to kernel cmdline
Shut down system
shutdown
shutdown
systemctl shutdown
Power off system
poweroff
poweroff
systemctl poweroff
Halt system
halt
halt
systemctl halt
Reboot system
reboot
reboot
systemctl reboot
Configure GRUB bootloader
/boot/grub/grub.conf
/etc/default/grub
grub2-mkconfig
grub-set-default
Installation
  • The installer has been redesigned to minimise the interaction and time required to complete a default installation. See Section 3.2.3. New Installer in the RHEL7 Migration Planning Guide for details.
  • Text installer automatically selects Base and Core group packages only. It configures the bootloader (except in kickstart installations), but cannot handle custom file system layouts or prompt for information regarding package selection, partitioning. See Section 2.3 Text-based Installer of the RHEL6 Migration Planning Guide for details.
  • During installation or upgrade, no more than 15 partitions can be detected; if your system has more than 15 partitions, migrate the disk to logical volumes before upgrading.
  • The installer now uses NetworkManager to configure network interfaces during installation.


Basic administration
  • UIDs from 1-999 are now reserved for system use; new users will be assigned UIDs above this range.
  • The maximum number of processes available to non-root users in a single pam session (ulimit -u) is now 4096 processes by default, as specified in /etc/security/limits.d/*-nproc.conf. When this file is not present on your system, the maximum number of processes is calculated according to the processes described in What determines the default value of nproc(ulimit -u) on Red Hat Enterprise Linux?.
  • New logging framework, journald, captures data from syslog, kernel, initial RAM disk and early boot messages, as well as messages sent to standard output and standard error output. It stores this data in binary journal files, and forwards data to rsyslog, which can perform further processing and store text-based log files, maintaining compatibility with systems that require rsyslog. Journald is configured with the new journalctl tool rather than in the /etc/syslogd.conf file. See Section 3.4.2 New Logging Framework in the RHEL7 Migration Planning Guide for details.

File system changes
Task
RHEL5
RHEL7
Default file system
ext3
xfs
Create/modify disk partitions
fdisk
parted
fdisk
gdisk
parted
ssm create
Format disk partition
mkfs.filesystem_type (ext4, xfs)
mkswap
mkfs.filesystem_type (ext4, xfs)
mkswap
ssm create
Defragment disk space
copy data to new file system
fsck (look for 'non-contiguous inodes')
copy data to new file system
fsck (look for 'non-contiguous inodes')
xfs_fsr
Mount storage
mount
/etc/fstab
mount
/etc/fstab
ssm mount
Create physical volume
pvcreate
pvcreate
ssm create (if backend is lvm)
Create volume group
vgcreate
vgcreate
ssm create (if backend is lvm)
Create logical volume
lvcreate
lvcreate
ssm create (if backend is lvm)
Enlarge volumes formatted with default file system
vgextend
lvextend
resize2fs
vgextend
lvextend
xfs_growfs
ssm resize
Shrink volumes formatted with default file system
resize2fs
lvreduce
vgreduce
XFS cannot currently be shrunk; copy desired data to a smaller file system.
Check/repair file system
fsck
fsck
ssm check
Configure NFS share
/etc/exports
service nfs reload
/etc/exports
systemctl reload nfs.service
Networking
  • The hostname variable is now defined in /etc/hostname, instead of /etc/sysconfig/network.
  • Network interfaces now named according to new schema. See Section 3.7.3 New Network Naming Schema in the RHEL7 Migration Planning Guide for details.
Security and access control
  • Firewall rules are now configured through the firewalld configuration tools, firewall-config, firewall-cmd, and firewall-applet (not included in the default RHEL7 installation). See 3.11.1.1. Migrating rules to firewalld in the RHEL7 Migration Planning Guide for details.
  • kerberos clients and servers default to not using keys for des-cbc-crc, des-cbc-md4, des-cbc-md5, des-cbc-raw, des3-cbc-raw, des-hmac-sha1, and arcfour-hmac-exp ciphers. Systems that need these ciphers require allow_weak_crypto = yes in the libdefaults section of /etc/krb5.conf
  • policykit now reads .rules files in lexicographic order from /etc/polkit-1.rules.d and /usr/share/polkit-1/rules.d directories; first matching rule takes precedence, and /etc/polkit-1.rules.d is read before /usr/share/polkit-1/rules.d.
  • libuser no longer supports configurations with both ldap and shadow or ldap and files modules because doing so results in ambiguity in password handling
Clustering
  • keepalived replaces piranha
  • pcs replaces luci, but can only handle RHEL7 pacemaker-based clusters, not previous rgmanager-based clusters
  • online migration for clusters is not supported
  • new quorum implementation, votequorum, replaces qdiskd for most use cases
See Section 3.8 Clustering and High-Availability in the RHEL7 Migration Planning Guide for details.



Desktop
GNOME Classic is the new desktop environment in RHEL 7; see the RHEL 7 Desktop Migration and Administration Guide for details.
Command changes for common tasks
System basics
Task
RHEL5
RHEL7
View subscription information
/etc/sysconfig/rhn/systemid
subscription-manager identity
Configure subscription
rhn_register1
subscription-manager2
rhn_register 
3
View system profile
sosreport
dmidecode
hwbrowser
sosreport
dmidecode
lstopo
lscpu
Basic configuration
Task
RHEL5
RHEL7
Graphical configuration tools
system-config-*
gnome-control-center
Configure network
system-config-network
nmcli
nmtui
nm-connection-editor
Configure system language
system-config-language
localectl
Configure time and date
system-config-date
date
timedatectl
date
Synchronize time and date
ntpdate
/etc/ntp.conf
timedatectl
/etc/chrony.conf
ntpdate
Configure keyboard
system-config-keyboard
localectl


Jobs and services
Task
RHEL5
RHEL7
List all services
chkconfig --list
ls /etc/init.d/
systemctl -at service
ls /etc/systemd/system/*.service
ls /usr/lib/systemd/system/*.service
List running services
service --status-all
systemctl -t service --state=active
Start/stop service
service name start
service name stop
systemctl start name.service
systemctl stop name.service
Enable/disable service
chkconfig name on
chkconfig name off
systemctl enable name.service
systemctl disable name.service
View service status
service name status
systemctl status name.service
Check if service is enabled
chkconfig name --list
systemctl is-enabled name
Create new service file or modify configuration
chkconfig --add
systemctl daemon-reload
/etc/systemd/system/*.service
View run level/target
runlevel
who -r
systemctl get-default
who -r
Change run level/target
/etc/inittab
init run_level
systemctl isolate name.target
systemctl set-default
Configure logging
/etc/syslog.conf
/etc/rsyslog.conf
/etc/rsyslog.d/*.conf
/var/log/journal
systemd-journald.service
View logs
/var/log
/var/log
journalctl
Kernel, boot, and hardware
Task
RHEL5
RHEL7
Single user/rescue mode
append 1 or s or init=/bin/bash to kernel cmdline
append rd.break or init=/bin/bash to kernel cmdline
Shut down system
shutdown
shutdown
systemctl shutdown
Power off system
poweroff
poweroff
systemctl poweroff
Halt system
halt
halt
systemctl halt
Reboot system
reboot
reboot
systemctl reboot
Configure default run level/target
/etc/inittab
systemctl set-default
Configure GRUB bootloader
/boot/grub/grub.conf
/etc/default/grub
grub2-mkconfig
grub-set-default
View hardware configured
hwbrowser
lshw (in EPEL)
Software management
Task
RHEL5
RHEL7
Install software
yum install
yum groupinstall
yum install
yum group install
View software info
yum info
yum groupinfo
yum info
yum group info
File systems, volumes, and disks
Task
RHEL5
RHEL7
Default file system
ext3
xfs
Create/modify disk partitions
fdisk
parted
fdisk
gdisk
parted
ssm create
Format disk partition
mkfs.filesystem_type (ext4, xfs)
mkswap
mkfs.filesystem_type (ext4, xfs)
mkswap
ssm create
Defragment disk space
copy data to new file system
fsck (look for 'non-contiguous inodes')
copy data to new file system
fsck (look for 'non-contiguous inodes')
xfs_fsr
Mount storage
mount
/etc/fstab
mount
/etc/fstab
ssm mount
Create physical volume
pvcreate
pvcreate
ssm create (if backend is lvm)
Create volume group
vgcreate
vgcreate
ssm create (if backend is lvm)
Create logical volume
lvcreate
lvcreate
ssm create (if backend is lvm)
Enlarge volumes formatted with default file system
vgextend
lvextend
resize2fs
vgextend
lvextend
xfs_growfs
ssm resize
Shrink volumes formatted with default file system
resize2fs
lvreduce
vgreduce
XFS cannot currently be shrunk; copy desired data to a smaller file system.
Check/repair file system
fsck
fsck
ssm check
Configure NFS share
/etc/exports
service nfs reload
/etc/exports
systemctl reload nfs.service
Networking
Task
RHEL5
RHEL7
Configure name resolution
/etc/hosts
/etc/resolv.conf
/etc/hosts
/etc/resolv.conf
nmcli con mod
Configure hostname
/etc/sysconfig/network
hostnamectl
/etc/hostname
nmtui
View network interface info
ip addr
ifconfig
brctl
ip addr
nmcli dev show
teamdctl
brctl
bridge
Configure network interface
/etc/sysconfig/network-scripts/ifcfg-*
/etc/sysconfig/network-scripts/ifcfg-*
nmcli con [add|mod|edit]
nmtui
nm-connection-editor
Configure routes
ip route add
system-config-network
/etc/sysconfig/route-iface
ip route add
nmcli
nmtui
nm-connection-editor
/etc/sysconfig/route-iface
Configure firewall
iptables and ip6tables
/etc/sysconfig/ip*tables
firewall-cmd
firewall-config
View ports/sockets
ss
lsof
netstat
ss
lsof
Resource management
Task
RHEL5
RHEL7
View system usage
top
ps
sar
iostat
netstat
vmstat
mpstat
numastat
top
ps
sar
iostat
ss
vmstat
mpstat
numastat
tuna
View disk usage
df
df
iostat



Comments

Popular posts from this blog

RHEL - How to back out a failed patch

Vathsa's- Linux - SysOps and DevOps

Local Yum Repository for Oracle Linux 8