#!/bin/bash
HOSTNAME="$1"
IPADDR=$2
INTNAME=$3
SUBFIX=$(date +%s)
if [ $# -ne 3 ]; then
echo "The parameter is not right"
echo "$(basename $0) hostname ipaddress interfaceName"
echo "e.g: $(basename $0) ora119.sleety.com 192.168.146.119 eth0"
exit 1
fi
echo $HOSTNAME
echo $IPADDR
echo $INTNAME
read -p "Go on? (y|n)" ANSWER
echo $ANSWER
ANSWER=$(echo $ANSWER | tr 'A-Z' 'a-z')
if [ $ANSWER = 'n' ]; then
exit 1
fi
#################################################################
echo "Changing the hostname"
echo "Backup the /etc/sysconfig/network"
cp /etc/sysconfig/network /etc/sysconfig/network.${SUBFIX}
echo "Modify it"
hostname ${HOSTNAME}
sed -i -e "/HOSTNAME/s/.*/HOSTNAME=${HOSTNAME}/" /etc/sysconfig/network
##############################################################################
### Transfer the $INTNAME to lowercase, for example, ETH0 -> eth0
INTNAME=$(echo $INTNAME | tr 'A-Z' 'a-z' )
INTNAME=/etc/sysconfig/network-scripts/ifcfg-${INTNAME}
echo "Changing the ${INTNAME}'s ip address "
echo "Backup the ${INTNAME}"
cp ${INTNAME} ${INTNAME}.${SUBFIX}
echo "Modify the $INTNAME"
sed -i -e '/BOOTPROTO/s/dhcp/static/' -e '/IPV6/s/yes/no/' -e '/ONBOOT/s/no/yes/' ${INTNAME}
echo "IPADDR=${IPADDR}" >> ${INTNAME}
##################################################################################
echo "Changing the /etc/sysconfig/selinux"
echo "backup it"
cp /etc/sysconfig/selinux /etc/sysconfig/selinux.${SUBFIX}
sed -i -e '/SELINUX=enforcing/s/.*/SELINUX=disabled/' /etc/sysconfig/selinux
#############################################################################
echo "Changing the init level: /etc/inittab"
echo "Backup it"
cp /etc/inittab /etc/inittab.${SUBFIX}
sed -i -e '/id:5:init/s/.*/id:3:initdefault:/' /etc/inittab
echo "Done"