how to tell when biosboot partition is needed?

Steve Rikli sr at genyosha.net
Thu Aug 16 01:29:34 UTC 2012


On Tue, Aug 14, 2012 at 09:08:10AM +0200, Richard Neuboeck wrote:
> I've got an answer from David Lehman how the decision process for the
> usage of biosboot works in anaconda:
> 
> Here is the entire decision tree:
> 
> - did the system boot in EFI mode or BIOS mode?
>   - EFI
>     - use gpt and never make biosboot
>   - BIOS
>     - is the disk larger than the max for msdos (2TB)?
>       - yes
>         - use gpt and ensure there's a biosboot partition
>       - no
>         - use msdos

Either I'm not following that logic or I think something isn't behaving
as advertised.  Here's my situation ....

I have a bog standard Dell PowerEdge 1850 -- same test machine I used in
the initial Fedora 16 work that prompted me to start this thread -- which
has no EFI, and boots from an old & small (20GB) SCSI disk.

If I read the above correctly, I should _not_ need a biosboot partition,
yet a Fedora 16 Kickstart install fails with the known partitioning error
mentioned in bugzillas et al, unless I create one.

What am I missing?

Cheers,
sr.


> So in my preinstall script I check for EFI capabilities and the disk size:
> 
>   # get disk size in GB
>   DISKSIZE=`parted -sm /dev/$DEV unit GB print | grep -e "$DEV" | cut
> -d: -f2 | sed -e 's/GB$//'`
>   if [ -e /sys/firmware/efi -o $DISKSIZE -gt 2100 ]
>   then
>     # bios boot partition necessary
>     echo "part biosboot --fstype=biosboot --size=1 --ondisk=$DEV" >>
> $INCFILE
>   fi
> 
> HTH
> Richard
> 
> 
> On 11.08.12 11:36, Richard Neuboeck wrote:
> > Thanks!
> > 
> > I mulled over the sources but didn't find the indicators for the final
> > selection of gpt over msdos as partition table label.
> > 
> > I'm not giving up yet :-)
> > Richard
> > 
> > On 10.08.12 23:41, Steve Rikli wrote:
> >> On Fri, Aug 10, 2012 at 09:57:26PM +0200, Richard Neuboeck wrote:
> >>> Hi List,
> >>>
> >>> I'm in the same predicament as Steve. My manual test installs of
> >>> Fedora 17 result in msdos and gpt partition table labels. Since I'm
> >>> using kickstart and a pre install script to partition the disc I would
> >>> also like to find a way to determine if a biosboot partition is
> >>> necessary or not.
> >>>
> >>> The only sure reason to install a biosboot partition I could find was
> >>> a disc >= 3TB.
> >>>
> >>> The UEFI test system I'm using definitely has UEFI enabled and since
> >>> the disc has 3TB should use EFI. But I couldn't find efi in sysfs like
> >>> anaconda tries to do to determine if it's an EFI capable system.
> >>> However this system gets a gpt label in my tests. But I don't know how
> >>> anaconda comes to that conclusion.
> >>
> >> I never heard/found any tips or other ideas, and I couldn't follow how
> >> Anaconda decides what to do either; so I simply started grep'ing around
> >> during a live %pre session to see what I could find.
> >>
> >> I came across /tmp/storage.log , which among many other things had a line
> >> like this:
> >>
> >>     storage: registered device format class BIOSBoot as biosboot
> >>
> >> which was about the only reference I could find to "biosboot" in the
> >> live Kickstart session.  I was thinking there might be something in
> >> /proc/ or /sys/ or thereabouts, but found nothing I could make use of.
> >>
> >> In any case, my %pre disk partitioning script looks for that string, and
> >> if found then it adds an entry for a biosboot partition similar to:
> >>
> >>     part biosboot --size 1 --fstype biosboot
> >>
> >> This method has the advantage of being independent of disk size, and
> >> also doesn't perform additional partitioning actions on older releases
> >> where /tmp/storage.log reports nothing about biosboot.  So I can keep
> >> using the same %pre script to partition old & new Fedoras, CentOS, etc.
> >>
> >> The obvious peril is Fedora may change/move/etc. the string in some future
> >> version of Anaconda, so I still occasionally keep an eye out for something
> >> a bit more programmatic/definitive; we'll see how well it holds up.
> >>
> >> Cheers,
> >> sr.
> >>
> >>
> >>> So right now I'm only relying on the disk size to choose the partition
> >>> layout in my preinstall script.
> >>>
> >>> Any pointers where I can find more details or information on how to
> >>> make an educated guess on how to partition would be very welcome.
> >>>
> >>> Thanks!
> >>> Richard
> >>>
> >>>
> >>> On 09.06.12 01:00, Steve Rikli wrote:
> >>>> Is there some programmatic way within Kickstart %pre to determine
> >>>> if a "biosboot" partition is needed, or at least if it is an
> >>>> available option/fstype?
> >>>>
> >>>> Like many folks, we create a "/tmp/partitions.inc" sort of
> >>>> %include file in %pre, to partition the disk.
> >>>>
> >>>> Starting in Fedora16 a "part biosboot ..." partition is required, 
> >>>> and ideally we'd like to be able to use the same %pre script to 
> >>>> setup partitions on all the different Linux versions we need.
> >>>>
> >>>> We would be okay with "wasting" 1MB and always creating a biosboot 
> >>>> partition for any Linux, but it's not a supported type prior to 
> >>>> Fedora16, so that isn't an option.
> >>>>
> >>>> Thanks, sr.
> >>>>




More information about the Kickstart-list mailing list