Re: Crashed gmirror, single disk marked SYNC and wont boot...



On Tue, Aug 21, 2007 at 02:15:08PM +0200, Johan Ström wrote:
Hi

FreeBSD gw-1.stromnet.se 6.2-RELEASE-p1 FreeBSD 6.2-RELEASE-p1 #7:
Tue Feb 13 18:24:34 CET 2007 johan@xxxxxxxxxxxxxxxx:/usr/obj/usr/
src/sys/ROUTER.POLLING i386

(ROUTER.POLLING is GENERIC + options DEVICE_POLLING and ALTQ,
IPSEC, also pfsync and carp)

This weekend I had a disk failing on me in a machine running gmirror
gm0 with 2 providers (ad0 and ad6). The whole box froze with no
screen output, and on hard reboot I got some LBA errors etc from ad0,
after a few reboots it got up and running though (I wasnt at the
screen, had do do it by phone so couldn't really debug very well).
As soon as the box got up, I removed ad0 from the gmirror, so ad6 was
the only provider. Today I got a new disk that would replace ad0..
Now remeber, ad6 was the only disk in the mirror. I took the box down
fine, replaced the disk. ad0 was now gone and instead I hade ad4 (ad4
+6 is SATA, ad0 was IDE). Changed so I booted of the old SATA..
Okay, there came the first problem; the boot loader gave me the usual
options F1 FreeBSD F5 Disk 2 (or whatever it said).. If I pressed F1
i got the same prompt again.. F5 nothing at all.. Funny!... The
system refused to load the loader (or whatever the 1-9 menu thingy is
called) kernel or anything..
So I finally plugged the old ad0 disk into the machine to at least
get it booted, thinking it would go up on the gmirror.. Nope..:

(got the new ad4 out here)
ad0: 38166MB <WDC WD400BB-00CAA1 17.07W17> at ata0-master UDMA100
ad6: 152627MB <SAMSUNG HD160JJ ZM100-41> at ata3-master SATA150
GEOM_MIRROR: Device gm0 created (id=4029378995).
GEOM_MIRROR: Device gm0: provider ad6 detected.
Root mount waiting for: GMIRROR
Root mount waiting for: GMIRROR
Root mount waiting for: GMIRROR
Root mount waiting for: GMIRROR
GEOM_MIRROR: Force device gm0 start due to timeout.
Trying to mount root from ufs:/dev/mirror/gm0s1a

Manual root filesystem specification:
<fstype>:<device> Mount <device> using filesystem <fstype>
eg. ufs:da0s1a
? List valid disk boot devices
<empty line> Abort manual input

mountroot>

Okey... so why wouldnt it load my mirror from ad6 now?? I just did a
clean shutdown without problems.. It didnt even recognize any slices
on ad6s1 (altough the ad6s1 was found)...

It loaded your mirror just fine, you confuse things. Gmirror started in
degraded state, as one could expect, but it seems there is no 'a'
partition on your gm0s1 slice (or entire bsdlabel is gone).
You could try to recreate it based on bsdlabel from ad0 (if it should be
the same), but I've no idea how it disapeared. Anyway, gmirror seems to
work properly.

Some more digging into gmirror, I did a gmirror dump ad6:

Metadata on /dev/ad6:
magic: GEOM::MIRROR
version: 3
name: gm0
mid: 4029378995
did: 449032193
all: 3

You have 3-way mirror?

genid: 0
syncid: 5
priority: 0
slice: 4096
balance: round-robin
mediasize: 20416757248
sectorsize: 512
syncoffset: 0
mflags: NONE
dflags: SYNCHRONIZING
hcprovider:
provsize: 160041885696
MD5 hash: 6e1e8ca80a27e0e1b0460feab595c39f

BTW. Your provider size is 149GB and mirror only use 19GB, which means
you mirrored 149GB disk with 19GB disk and you waste 130GB (it's
unused).

Some googling indicated that SYNCHRONIZING means that its not
"complete" and wont mount? Is that correct? Why would it be in that
state then, I just shut it down fine... And where the f*ck did my
slices go??..

SYNCHRONIZING means that this component was/is being synchronized. It
seems that you removed/lost the master disk, while it was synchronizing.
It should work anyway.

BTW. You confuse things again. Your slice is just fine (ad6s1), you
don't have partitions, AFAIU.

All in all, your partition table seems to be gone. If you created it on
gmirror before (gm0s1) you may still have the same partition table on
the other half of the mirror. You can try to move it to ad6 with
bsdlabel and verify if you can see file system inside partitions.

--
Pawel Jakub Dawidek http://www.wheel.pl
pjd@xxxxxxxxxxx http://www.FreeBSD.org
FreeBSD committer Am I Evil? Yes, I Am!

Attachment: pgpxKzaXebum1.pgp
Description: PGP signature



Relevant Pages

  • Re: gjournal: journaled slices vs. journaled partitions
    ... I didn't want to only put gmirror and have full drives rebuild ... I went with this setup anyway and I made some reset tests to see what ... provider is directly on the mirror provider for all mirrored filesystems ... the ill-advised journaled small partition issue been successfully overcome ...
    (freebsd-questions)
  • Re: how i locate swap area
    ... what you have with the command 'vgdisplay -v vg00'. ... Why Mirror Copies is 0? ... it seems that you have no disk mirroring. ... Primary Partition Table: ...
    (comp.sys.hp.hpux)
  • Re: gmirror disk fail questions...
    ... mirror/gm0 DEGRADED ad4 ... I am guessing that a failing disk is responsible for the data ... the mirror is marked clean ad there's no warnings about ... I believe the kernel hides individual labels for a gmirror volume. ...
    (freebsd-questions)
  • Re: Crashed gmirror, single disk marked SYNC and wont boot...
    ... As soon as the box got up, I removed ad0 from the gmirror, so ad6 was ... Today I got a new disk that would replace ad0.. ... So it tries to load, find no partition table, and ignores and unloads gm0? ...
    (freebsd-stable)
  • Re: Partitions and Out of Space
    ... "Pegasus (MVP)" wrote: ... Clone the old disk to the new disk, ... Rebuild the mirror. ... Partition and format the new disk. ...
    (microsoft.public.windows.server.general)

Quantcast