Handbook RAID1 example

Warren Block wblock at wonkity.com
Mon Jan 23 23:16:44 UTC 2012


Multiple users on the forums have reported problems with existing 
gmirror(8) mirrors being unbootable after upgrading to FreeBSD 9:
http://forums.freebsd.org/showthread.php?t=28895

The workaround is to set kern.geom.part.check_integrity="0" in 
/boot/loader.conf.


The example from the RAID1 chapter of the Handbook isn't helping:
http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/geom-mirror.html

The procedure overrides the safety and uses the last block of a drive, 
regardless of whether it was already allocated to a partition.  During 
boot, the GEOM system sees the error and stops:

GEOM_MIRROR: Device mirror/gm0 launched (2/2).
GEOM_PART: partition 1 has end offset beyond last LBA: 1250263727 > 1250263726
GEOM_PART: integrity check failed (mirror/gm0, MBR)

To be fair, that example allows (allowed) the user to set up a mirror 
of their existing disk complete with whatever partitioning existed.  And 
it still ought to work if the last block was not part of a partition.

That Handbook chapter could be updated without a huge change by removing 
the instructions to turn off the safety (so it will error out if the 
user tries it on an allocated last block).

Then add a note or warning along the lines of "The procedure shown can 
only be used if the last block of the drive has not been already 
allocated to a partition.  If the last block has been included in a 
partition, back up, repartion leaving at least one unused block at the 
end of the drive, create the mirror, and restore."



More information about the freebsd-doc mailing list