Hello all, I've been struggling with an issue with my kickstart configuration for a while now. My kickstart files are stored within the initrd image. What I would like to do here, is when the kickstart first starts up, I want it to grab a DHCP address (it does at the moment) so it can grab all of the necessary installation data off the net. Then, at some point _IN_ the install process, I'd like to have it query for manually input network settings. Here is my current kickstart script:
auth --useshadow --enablemd5 bootloader --location=mbr zerombr clearpart --all --initlabel text firewall --enabled --port=22:tcp firstboot --disable keyboard us lang en_US logging --level=info url --url=http://mirror.nexcess.net/CentOS/5.5/os/x86_64/ reboot --eject rootpw --iscrypted xx selinux --enforcing skipx timezone --isUtc America/Detroit install
part /boot --bytes-per-inode=4096 --fstype="ext3" --size=512 --ondisk=sda part swap --bytes-per-inode=4096 --fstype="swap" --size=2048 --ondisk=sda part / --bytes-per-inode=4096 --fstype="ext3" --grow --size=1 --ondisk=sda part /backup --bytes-per-inode=4096 --fstype="ext3" --grow --size=1 --ondisk=sdb
network --bootproto=dhcp --device=eth0
%packages --nobase @core system-config-network-tui
%post echo "nameserver 4.2.2.1" > /etc/resolv.conf echo "nameserver 8.8.8.8" >> /etc/resolv.conf
# write netconfig script cat << EOF > /bin/netconfig #!/bin/bash # check if user is root if [[ $EUID -ne 0 ]]; then echo "This script must be run as root" 1>&2 exit 1 fi # run system-config-network-tui /usr/sbin/system-config-network-tui # set variables eth0f="/etc/sysconfig/network-scripts/ifcfg-eth0" eth1f="/etc/sysconfig/network-scripts/ifcfg-eth1" netcfg="/etc/sysconfig/network" # turn on eth1 if it has an address, remove gateway.. shouldn't be set here # anyways if [ -f "$eth1f" ]; then if grep -q "IPADDR" $eth1f; then sed -i 's/ONBOOT=no/ONBOOT=yes/' $eth1f sed -i '/^GATEWAY/d' $eth1f sed -i '/^HOTPLUG/d' $eth1f fi fi # move gateway from ifcfg-eth0 to /etc/sysconfig/network if [ -f "$eth0f" ]; then e0gw=$(grep "GATEWAY" $eth0f) sed -i '/^GATEWAY/d' $eth0f # check to see if the gateway is already set. if it is, delete it first if ! grep -q "GATEWAY" /etc/sysconfig/network; then echo $e0gw >> $netcfg else sed -i '/^GATEWAY/d' $netcfg echo $e0gw >> $netcfg fi fi EOF chmod +x /bin/netconfig
At the moment, I have a not-so-elegant script written to the server to be run manually after install. I began using system-config-network-tui vanilla, but realized it had some differences from the network configuration tool in anaconda (net.c?) I tried my best to correct those differences with my netconfig script. I've already tried running system-config-network-tui in the %post section, but it doesn't seem to work. If anyone has had experience in dealing with a scenario such as this, any help would be greatly appreciated.
Thanks, Daniel Theisen dtheisen@nexcess.net