User-interactivity in %pre

Daniel Segall dan at half-asleep.com
Wed Nov 10 15:58:40 UTC 2004


Speaking of which....

Has anyone experienced any problems with this on FC3? For some reason, my
dialog boxes aren't showing up properly since I started testing FC3 a
while back. I have to (blindly) hit enter on my first prompt, then the
next one (which requires input) will show up, then the next yes/no box
doesn't show up either.

I know that's probably not the best explaination, but It's hard to
describe. Any ideas? Here's the chunk of my %post:


%post --interpreter /bin/sh
exec < /dev/tty3 > /dev/tty3
chvt 3

---snip---
Some random package stuff here
---snip---

# Execute our post install
echo "  "                                       >>/root/ks.log
if [ -f /root/linux-postinstall.sh ]; then
        echo " * Executing Post-Install..."     >>/root/ks.log
        echo " * Executing Post-Install..."
        chmod +x /root/linux-postinstall.sh
        exec /root/linux-postinstall.sh         >>/root/ks.log
else
        echo "Can't find linux-postinstall.sh." >>/root/ks.log
        echo "Can't find linux-postinstall.sh."
fi

# We done.
echo " * Post-Install complete. System rebooting." >>/root/ks.log
echo " * Post-Install complete. System rebooting."
chvt 1


-Dan

> Looks like you have the chvt part.  You also need to redirect standard
> input/output.  This is the shell command to do it:
>
> exec < /dev/tty3 > /dev/tty3
>
> I would guess you could wrap that in a python system call, like you did
> for chvt.
>
> -Ed
>
>
> On Wed, 2004-11-10 at 06:41, Martin Høy wrote:
>> Hello,
>>
>> I'm adapting FC3 to a rather large install-session at the
>> Norwegian Meteorological Institute (around 200 machines).
>>
>> I'm trying to create a %pre-script that does:
>>
>> 1) If the machine is allready installed with RH9, format / and
>>    install a fresh FC3, but keep /home (and another partition).
>> 2) If the machine is not previously installed with RH9, create
>>    all needed partitions and install a fresh FC3.
>> 3) Detect whether the machine has a SATA-controller, and thus sda
>>    should be used for installs, not hda.
>>
>> I'm using the labels of exisiting partitions to determine whether
>> the machine has been installed with RH9 (the other alternative is
>> an old Debian-installation), and which partition contains what.
>>
>> I either case, I want the user to confirm that my script has
>> guessed right, before the installation continues and potentially
>> removes the current /home...
>>
>> How can I interact with the user in the %pre-section? My current
>> script is attached: The interactivity-part in main() is commented
>> out, but the rest of the script runs as expected and creates the
>> correct files under /tmp/.
>>
>>
>> Any hints on how to read input (y/n) from the user and either
>> proceed or abort the installation, are very much appreciated.
>>
>>
>> Regards,
>>
>> Martin
>
> _______________________________________________
> Kickstart-list mailing list
> Kickstart-list at redhat.com
> https://www.redhat.com/mailman/listinfo/kickstart-list
>
>





More information about the Kickstart-list mailing list