#!/bin/bash . /tmp/post-install/variables.txt #delete the udev rule in the image rule_file=`ls /etc/udev/rules.d/*net_persistent_names.rules` if [ -n "$rule_file" ];then rm -f $rule_file fi hostname $HOSTNAME #write the config files, the device name may change after reboot #so use the dhcp for all interface #device_names=`ifconfig -a | grep -i hwaddr | grep -i 'Ethernet' | grep -v usb| awk '{print $1}'` device_names=`ip link |grep "BROADCAST" |awk '{print $2}' | sed s/://` str_cfg_file='' if [ -d "/etc/sysconfig/network-scripts/" ];then #redhat grep -i HOSTNAME /etc/sysconfig/network if [ $? -eq 0 ];then sed -i "s/HOSTNAME=.*/HOSTNAME=$HOSTNAME/g" /etc/sysconfig/network else echo "HOSTNAME=$HOSTNAME" >> /etc/sysconfig/network fi for i in $device_names;do str_cfg_file="/etc/sysconfig/network-scripts/ifcfg-$i" echo "DEVICE=$i" > $str_cfg_file echo "BOOTPROTO=dhcp" >> $str_cfg_file echo "NM_CONTROLLED=yes" >> $str_cfg_file echo "ONBOOT=yes" >> $str_cfg_file done elif [ -d "/etc/sysconfig/network/" ];then #suse echo "$HOSTNAME" > /etc/HOSTNAME for i in $device_names;do str_cfg_file="/etc/sysconfig/network/ifcfg-$i" echo "DEVICE=$i" > $str_cfg_file echo "BOOTPROTO=dhcp" >> $str_cfg_file echo "STARTMODE=onboot" >> $str_cfg_file echo "DHCLIENT_PRIMARY_DEVICE=yes" >> $str_cfg_file done else #ubuntu echo "Does not support ubuntu." exit 1 fi