Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 31 Jan 2012 08:45:52 +0400
From:      "Andrey V. Elsukov" <bu7cher@yandex.ru>
To:        Vick Khera <khera@kcilink.com>
Cc:        sascha@trimind.de, freebsd-geom@freebsd.org
Subject:   Re: gmirror failed with error 19.
Message-ID:  <4F277200.8020003@yandex.ru>
In-Reply-To: <9DB745B1-AA3D-4EF4-9A5E-4159EBFBC3E7@kcilink.com>
References:  <9DB745B1-AA3D-4EF4-9A5E-4159EBFBC3E7@kcilink.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On 30.01.2012 21:02, Vick Khera wrote:
> The relevant bits of change are:
> 
> -last: 156249953 +last: 156249998
> 
> where the latter number is from the 9.0 boot of this system.
> 
> So, it seems that something other than just the "last" reported from gpart is causing gmirror to
> fail its integrity check.

First of you can enable verbose boot mode and you will see why your partition table was lost.
Pay attention to the messages which begins from "GEOM_PART:".
Usually the cause is that you have created the mirror after partition table.
And partition size stored in the partition table metadata is greater than available sectors
in this mirror. Now it is detected by the gpart's integrity checks and gpart on the mirror
refuses partition table.

One way to fix the problem:
1. Disable integrity checks: kern.geom.part.check_integrity=0
2. Detach one component from the mirror and destroy partition table on it.
3. Create new mirror on this disk and recreate partition table ATOP of the mirror.
4. dump+restore the data from old mirror to new one
5. destroy old mirror and attach the disk to new mirror.

-- 
WBR, Andrey V. Elsukov



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4F277200.8020003>