root on gmirror and disk failure...
modulok at gmail.com
Sat Sep 1 20:14:07 PDT 2007
I'm experimenting with gmirror on the root partition on a test system
running FreeBSD 6.1-RELEASE. I have two physical disks on the same IDE
header (master and slave). This was setup following the tutorial in
the handbook. The system boots and mounts root from /dev/mirror/gm0s1a
as expected. The reported status of the mirror was active, complete,
up and running with both disks synced. Everything is as it should be.
When I simulate a disk failure on the slave drive (the first consumer
in the mirror), by disconnecting the power input and booting the
system, the following occurs:
1. The BIOS complains of a disk error, but otherwise continues to boot.
2. The master boot record is found and boot is executed.
3. boot complains, letting me know the default disk it boots from
is gone and prompts for manual specification. This is fine and I
specify the alternate disk to boot from.
4. loader(8) is found and presents its menu, it starts the
automatic boot sequence with the default kernel.
5. It successfully finds the kernel and executes it.
6. The kernel output "Trying to mount root from
ufs:/dev/mirror/gm0s1a", fails and I am prompted for the location of a
root partition. I digress just a moment here as the system appears to
hang, as keyboard input is not detected and at this point on the boot
phase I have no other metric from which to judge whether it is
actually hanged or not. The keyboard was detected prior to this
failure, as reported in the kernel's output and the keyboard is known
to work on this system. So that's weird, but it even if I could type
in something, it wouldn't matter because it's looking in the correct
location for root, it's just that location doesn't exist...moving
The provider, /dev/mirror/gm0, is not being created. This is
significant for obvious reasons: no mirror means no provider which
means no root. The module /boot/kernel/geom_mirror.ko is loaded, as I
have manually loaded it via the loader(8) prompt and attempted the
simulated failure again with identical results. It's the provider that
isn't being created, for whatever reason.
Suggestions? (Other than purchasing a hardware RAID card).
More information about the freebsd-questions