gpart: table 'da0' is corrupt; operation not permitted

Warren Block wblock at wonkity.com
Tue Jul 16 22:01:03 UTC 2013


On Tue, 16 Jul 2013, aurfalien wrote:

>
> On Jul 16, 2013, at 1:50 PM, Michael Sierchio wrote:
>
>> On Tue, Jul 16, 2013 at 1:44 PM, aurfalien <aurfalien at gmail.com> wrote:
>>
>>> Upon doing;
>>>
>>> gpart destroy da0
>>>
>>> I get;
>>>
>>> gpart: Device busy
>>
>> crude but effective:
>>
>>
>> DISK=da0
>>
>> offset=`diskinfo $DISK | awk '{ print $4 - 131072 }'`
>> dd if=/dev/zero of=/dev/$DISK bs=64k count=1
>> dd if=/dev/zero of=/dev/$DISK bs=64k seek=$offset
>>
>> gpart create -s gpt ${DISK}
>
> This is what I ended up doing.
>
> I unplugged it, waited a few, re plugged and then I was able to delete/destroy.
>
> I will keep your method on hand though as I prefer not doing a hot plug.

Hot plug?  That just wipes the beginning and end of the disk.  I would 
erase 1M just to be sure.

The more elegant version is

   gpart destroy -F da0

If it gives an error when doing that, disabling the safety may be 
necessary:  sysctl kern.geom.debugflags=16
Do that only when necessary.  It usually is not.


More information about the freebsd-questions mailing list