It seems that after setting the boot flag for a partition another call to udevsettle is needed as otherwise I get errors like:
(CMD) parted -s /dev/sda set 2 boot on 1> /tmp/1M9vjzau1C 2> /tmp/EiBB63qTW8 Executing: parted -s /dev/sda set 2 boot on (CMD) mkfs.ext3 /dev/sda1 1> /tmp/UuvcTzUOVm 2> /tmp/V6Jwp4NIzT Executing: mkfs.ext3 /dev/sda1 Command mkfs.ext3 /dev/sda1 had exit code 1 (STDERR) mke2fs 1.41.2 (02-Oct-2008) (STDERR) Could not stat /dev/sda1 --- No such file or directory (STDERR) (STDERR) The device apparently does not exist; did you specify it correctly? although after the script is done, the partition does exist as it should. The complete format.log can be seen at http://paste.debian.net/20120/, the small patch for this would probably look like: --- /usr/share/fai/setup-storage/Commands.pm 2008-08-12 15:01:38.000000000 +0200 +++ ./Commands.pm 2008-10-27 16:33:15.000000000 +0100 @@ -813,10 +813,11 @@ if ($FAI::configs{$config}{bootable} > -1) { &FAI::push_command( "parted -s $disk set " . $FAI::configs{$config}{bootable} . " boot on", "exist_" . &FAI::make_device_name($disk, $FAI::configs{$config}{bootable}), "boot_set_$disk" ); + &FAI::push_command( "udevsettle --timeout=10", "run_udev_boot", "exist_udev_boot" ); } }
signature.asc
Description: Digital signature