#!/bin/sh ## centos2cl INFO # Short Description :upgrades CentOS or RHEL distro to CloudLinux # Description :removes yum repo configuration related to CentOS/RHEL, # as well as release related packages. Installs cloudlinux # release related packages, new kernel and lve tools ## centos2cl INFO ARCH=$(uname -i) yum clean all function check_kernel_update_permission { if [ -e /etc/yum.conf ] && [ -n "$(grep exclude /etc/yum.conf | grep kernel)" ]; then echo Kernel update is prohibited on your system. echo Remove "exclude kernel" option from /etc/yum.conf echo and run this script again. exit 1; fi; } function backup { BACKUP=/etc/cl-convert-saved mkdir -p $BACKUP cp /etc/redhat-release $BACKUP #disable redhat mv /etc/yum.repos.d/RedHat-Base.repo $BACKUP 2> /dev/null #test if that is the rate path rpm -e --nodeps redhat-release-notes redhat-release yum-rhn-plugin redhat-logos 2> /dev/null #disable centos mv /etc/yum.repos.d/CentOS-Media.repo $BACKUP 2> /dev/null mv /etc/yum.repos.d/CentOS-Base.repo $BACKUP 2> /dev/null rpm -e --nodeps centos-release centos-release-notes redhat-logos 2> /dev/null ; } function prep { rpm -Uvh http://repo.cloudlinux.com/cloudlinux/migrate/$ARCH/CloudLinux/cloudlinux-release-5-5.el5.cloudlinux.noarch.rpm --force rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-CloudLinux; } case "$1" in -t) check_kernel_update_permission backup prep yum -y --enablerepo cloudlinux-updates-testing install lve lve-utils liblve exit 0;; -c) rpm --import http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5 rpm -ivh http://mirror.centos.org/centos/5/os/${ARCH}/CentOS/centos-release-5-4.el5.centos.1.${ARCH}.rpm --force --nodeps yum install centos-release-notes rpm -e --nodeps cloudlinux-release lve liblve lve-utils mod_hostinglimits mod_sucgid 2>/dev/null echo "You converted back to CentOS" echo "Now is the time to install kernel." echo -e "To delete CloudLinux kernel do \nrpm -e $(rpm -qa | grep ^kernel-2 | grep cloud | tr -s '\n' ' ')" echo "To install new centos kernel once you deleted cloudlinux kernel, type yum install kernel" exit 0;; esac check_kernel_update_permission backup prep yum -y install lve liblve lve-utils