how to tell when biosboot partition is needed?
Richard Neuboeck
hawk at tbi.univie.ac.at
Tue Aug 14 07:08:10 UTC 2012
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
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.
>>>>
>>
>> _______________________________________________
>> Kickstart-list mailing list
>> Kickstart-list at redhat.com
>> https://www.redhat.com/mailman/listinfo/kickstart-list
>>
>
> _______________________________________________
> Kickstart-list mailing list
> Kickstart-list at redhat.com
> https://www.redhat.com/mailman/listinfo/kickstart-list
>
More information about the Kickstart-list
mailing list