1

I have the below kickstart %post, but it hangs at the Post Installation Screen. Any thing I had missed or done wrongly? Thanks.

%post --log=/root/my-post-log ( echo "# Running Post Configuration #" #Switch to virtual terminal 3 so that user's input is accepted chvt 3 exec < /dev/tty3 > /dev/tty3 2>&1 echo "################################" echo "# Running Post Configuration #" echo "################################" #Get the input echo "Please specify IP address:" read ip echo "Please specify Netmask:" read mask echo "Please specify Gateway:" read gateway echo "Please specify Nameserver:" read nameserver echo "Please specify Timezone (Asia/Singapore):" read timezone echo "Please specify NTP Server:" read ntpserver #Substitute with sed the hardcoded IP address with the one we've specified echo "Updating Network Configurations..." sed -i "s/2\.2\.2\.2/$ip/" /etc/sysconfig/network-scripts/ifcfg-eth0 sed -i "s/4\.4\.4\.4/$mask/" /etc/sysconfig/network-scripts/ifcfg-eth0 sed -i "s/1\.1\.1\.1/$gateway/" /etc/sysconfig/network-scripts/ifcfg-eth0 sed -i "s/1\.1\.1\.1/$gateway/" /etc/sysconfig/network sed -i "s/8\.8\.4\.4/$nameserver/" /etc/resolv.conf sed -i "s/Asia\/Singapore/$timezone/" /etc/sysconfig/clock sed -i "s/0\.centos\.pool\.ntp\.org/$ntpserver/" /etc/ntp.conf service network restart echo "Network Configurations Updated" #Switch back to virtual terminal 1 for the installation to finish exec < /dev/tty1 > /dev/tty1 chvt 1 echo "End of post-install steps" ) 2>&1 | /usr/bin/tee /root/post_install.log | tee /dev/console %end 

I have tested the below as well, still doesn't work:

%post #Switch to virtual terminal 3 so that user's input is accepted chvt 3 exec < /dev/tty3 > /dev/tty3 echo "################################" echo "# Running Post Configuration #" echo "################################" #Get the input echo "Please specify IP address:" read ip echo "Please specify Netmask:" read mask echo "Please specify Gateway:" read gateway echo "Please specify Nameserver:" read nameserver echo "Please specify Timezone (Asia/Singapore):" read timezone echo "Please specify NTP Server:" read ntpserver #Substitute with sed the hardcoded IP address with the one we've specified echo "Updating Network Configurations..." sed -i "s/2\.2\.2\.2/$ip/" /etc/sysconfig/network-scripts/ifcfg-eth0 sed -i "s/4\.4\.4\.4/$mask/" /etc/sysconfig/network-scripts/ifcfg-eth0 sed -i "s/1\.1\.1\.1/$gateway/" /etc/sysconfig/network-scripts/ifcfg-eth0 sed -i "s/1\.1\.1\.1/$gateway/" /etc/sysconfig/network sed -i "s/8\.8\.4\.4/$nameserver/" /etc/resolv.conf sed -i "s/Asia\/Singapore/$timezone/" /etc/sysconfig/clock sed -i "s/0\.centos\.pool\.ntp\.org/$ntpserver/" /etc/ntp.conf service network restart echo "Network Configurations Updated" #Switch back to virtual terminal 1 for the installation to finish exec < /dev/tty1 > /dev/tty1 chvt 1 %end 
0

1 Answer 1

-2

you could try

exec < /dev/console > /dev/console 

instead of

exec < /dev/tty3 > /dev/tty3 
2
  • 1
    Hi and welcome to the site. We expect answers to be a bit more comprehensive. How does your solution help the OP? Does it help them? What makes you think they don't need to use tty3 specifically? What makes you think that /dev/console is an acceptable alternative? Also, on many (all?) systems, tty3 is writeable by users belonging to the tty group while /dev/console is only writeable by users in the root group. Commented Jul 11, 2014 at 13:56
  • Because I already did the experiment by myself. /dev/tty3 does not work in kickstart script, but /dev/console could work well. Besides, kickstart script is executed as root permission. Commented Feb 4, 2016 at 6:49

You must log in to answer this question.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.