Re: gpart on macbook air

From: Raoul MEGELAS <rmgls_at_free.fr>
Date: Mon, 01 Oct 2012 15:10:22 +0200
on Mon, 01 Oct 2012 12:29:02 +0400
"Andrey V. Elsukov" <ae_at_FreeBSD.org> wrote:

On 30.09.2012 23:06, Raoul MEGELAS wrote:
>>> When you are deleting a partition, the kernel completely overwrites  the
>>> partition table and PMBR area. You can compare first 34 blocks before
>>> deletion and after to see what is going on.
>> 
>> I can understand that, but i would have thought
>> that the deletion of the concerned partition was written preserving others???
>> 
>> something like:
>> 
>> - read the gpt table
>> - find the offset
>> - zeroes the partition entry
>> - rewrites the table?
>> 
>> is not that logic?
>> 
>> if it is not so, i does not understand this behaviour.
> Hi, Raoul,
>
> The kernel has a copy of the partition table in the memory.
> When you are deleting some partition, it removes the partition entry
> from the memory, constructs updated GPT header and table, calculates
> checksums and writes this data into corresponding places.
> Any way, this should correctly work.
>
> My guess is that Apple's boot loader detects some changes and
> just doesn't want to work. If you think that gpart incorrectly works,
> please make a copy of first 34 blocks before and after deletion and
> send them to me.

Hi Andrey,

You helped me to find the point:

Apple maps the starting point of the first partition
in the MBR like this:

000001be 00 fe ff ff ee fe ff ff 01
   when gpart maps:
000001be: 80 00 02 00 ee ff ff ff 01
it is a 251G drive.

a solution would be to inspect the gpt table and if an osx-boot
is present to leave the starting point unchanged?

i tested it on osx 10.8.

Please note than geom mark active the partition
when osx zeroes the 1be byte.

but with this byte set or unset, osx starts (perhaps non checked at all).



Regards

Raoul
rmgls_at_free.fr
Received on Mon Oct 01 2012 - 11:10:30 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:31 UTC