+++ This bug was initially created as a clone of Bug #635798 +++ Description of problem: kick starting will fail if "keep_system_id" pre-script is enabled. Version-Release number of selected component (if applicable): 1.1 How reproducible: kickstart system through proxy server. Steps to Reproduce: 1.kickstart off usb key 2.hangs on pre-install 3. Actual results: system does not build Expected results: system kickstarts correctly. Additional info: manually removing keep_system_id from "/var/lib/cobbler/snippets/spacewalk/keep_system_id" and updating kickstart profile resolves issue
Created attachment 450940 [details] keep_system_id.patch I have debugged this issue and have come to somewhat of a conclusion. I experienced this when re-deploying a machine with CentOS 5.5 from a Spacewalk 1.1 server. What happens is that the kickstart script is fetched, dependencies are resolved, disks are set up and formatted and then when they are mounted everything hangs. The machine will become totally unresponsive. (Even stops responding to ping.) How to reproduce: 1. Insert 'sleep 300' in line 3 of /var/lib/cobbler/snippets/spacewalk/keep_system_id (This gives us time to tinker in the shell) 2. Kickstart system, wait for it to start running Pre-scripts. 3. Press ALT+F2 to go to a shell. 4. The winning combo I used: cd /tmp mkdir foo bar mount /dev/sda1 foo ls foo umount foo mount /dev/sda2 bar (Results in an error due to volume being Linux LVM) mount /dev/sda1 foo (Results in a total lockup) keep_system_id tries to mount any partitions/volumes it can find including swap etc. When this happens mount gives an error and the next time a valid volume is mounted everything hangs. This is most likely a bug in busybox or in the kernel. I trust the Spacewalk devs to take it upstream if they think it is nessesary. Workaround The non destructive workaround for this is to go to the Spacewalk UI and edit the kickstart profile. Under System Details, choose the 3rd option under Spacewalk Profile (Leave the existing system profile in place...) I have created a patch that checks if the partitions/volumes contain a valid ext filesystem before trying to mount them. This gets Spacewalk off the hook but the underlying bug is still there.
We had a bug report Bug 664724 - kickstart snippet keep_system_id does not work which was resolved by fixing syntax problem in the snippet. I wonder to what extend this is a fix for this case as well.