Red Hat Bugzilla – Bug 10044
Last modified: 2008-05-01 11:37:54 EDT
My copy of Appendix G: Kickstart Installations for 6.2 provides examples of
%post section directives, such as
echo "nameserver 10.10.0.2" >> /etc/resolv.conf
which has been in our documentation for a while. However, since 6.1, and
continuing with 6.2 RC2, that syntax will not work. It will create a file
named /etc/resolv.conf^M, with "^M" indicating an end-of-line character (it
will appear in an ls as /etc/resolv.conf?.) Furthermore, kickstart files
that include multiple lines will not work reliably. Some lines will
execute, but many or most will not. This problem is mentioned in #6171,
which mostly concerns the assorted shortcomings of mkkickstart.
Fortunately, the workaround is trivial: placing a semicolon at the end of
every line in the post section will result in files with correct names, and
all commands that can execute (it doesn't fix misguided ideas or syntax!)
We should consider one of two possible fixes: either modify the kickstart
code such that we strip the end-of-line characters of %post lines before we
pass them, or we change the documentation to reflect the need for a
semicolon delimiter. Kickstart is a great facility, and 6.2 makes it even
better, but we will have people grumbling about it if they can't
successfully execute our %post section examples correctly, let alone the
more complex things they may undertake.
If you are getting the ^M on each line then I'd question how you are creating
and or coping the ks.cfg file to your floppy. It sounds like you are suffering
from a DOS/Win vs UNIX end of line issue. DOS/Win I believe uses two special
characters to end the line and carriage return. Unix on the other hand only
uses one. I've got a three page post install script that I"ve never had trouble
with yet. I copy my ks.cfg file to the floppy via mtools "mcopy". You might
want to try that if you have not already.
Yes, this is either the result of using a Win/DOS editor or using a
wordprocessing program to write a plain text file and not saving with the
correct file format.
This is definitely not a problem with the code, as everytime that I test
kickstart installations, I am echoing out about 6 different diagnostic strings
from the %post and have no trouble accessing any of them on reboot.