> > Hello list, > > there might be a small discrepancy between setup-storage and its man page: > > Without explicitly setting the option bootable:1 in our disk_config partition > files, the boot flag is not set in the MBR, which causes some of our machines > not to boot, while the setup-storage man page says (at least to my > interpretation), that / is set as the default boot partition. > > To give more information, the following disk_config file does lead to > non-booting machines in some cases: > > # BEGIN > disk_config disk1 disklabel:msdos > > # <type> <mountpoint> <size> <filesystem> <mount_options> <fs_options> > > primary / 2500 ext3 rw,errors=remount-ro > logical swap 1000-2000 swap rw > logical /var 1500-2000 ext3 rw createopts="-m 5" > tuneopts="-c 0 -i 0" > logical /tmp 500-1500 ext3 rw createopts="-m 0" > tuneopts="-c 0 -i 0" > logical /usr 10G-20G ext3 rw > logical /home 10G-100% ext3 rw,nosuid createopts="-m 1" > tuneopts="-c 0 -i 0" > # END > > So, what's wrong here, the manual or my understanding of it? >
I think, the code is/was wrong. The documentation is correct in that it says what it should do. Attached is a patch to fix that issue (meant for 3.2.20), which is included in 3.2.21+experimental2. Best, Michael
2009-05-06 Michael Tautschnig <[email protected]> * setup-storage/Parser.pm: Set the boot flag on partition mounted at /, if bootable is not explicitly set. Index: trunk/lib/setup-storage/Parser.pm =================================================================== --- trunk.orig/lib/setup-storage/Parser.pm +++ trunk/lib/setup-storage/Parser.pm @@ -522,6 +522,12 @@ } else { $FAI::partition_pointer->{encrypt} = 0; } + if ($FAI::device =~ /^PHY_(.+)$/ && + -1 == $FAI::configs{$FAI::device}{bootable} && + $FAI::partition_pointer->{mountpoint} eq "/") { + $FAI::configs{$FAI::device}{bootable} = + $FAI::partition_pointer->{number}; + } } name: m{^([^/,\s\-]+)}
pgpwUUNeyX7ET.pgp
Description: PGP signature
