|
Neohapsis is currently accepting applications for employment. For more information, please visit our website www.neohapsis.com or email hr@neohapsis.com |
Re: Filesystem corruption w/ RAID array
From: Robert Jones (robertjo
io.com)
Date: Fri Sep 01 2006 - 12:20:04 CDT
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
On Fri, Sep 01, 2006 at 03:19:02PM +0200, Joachim Schipper wrote:
> On Fri, Sep 01, 2006 at 02:32:08AM -0500, Robert Jones wrote:
> > All -
> >
> > I am having issues with filesystem corruption on a RAID1 array using
> > RAIDframe on OpenBSD 3.7. If I copy a large (500M+) file onto a
> > filesystem on the array, the copied file will end up corrupted, other
> > files on the filesystem may end up corrupted and fsck will show various
> > errors in the filesystem metadata. The drives themselves check out fine
> > and are showing no damaged sectors or other problems. Can anyone help me
> > identify and fix the problem?
> >
> > Contents of /etc/raid0.conf, fdisk info and dmesg are below. I'll
> > provide any additional information as necessary.
>
> Disklabel would be useful. Oh, and for the record, upgrade. Not that
> that would solve the problem at hand...
Disklabels:
$ sudo disklabel wd1
# using MBR partition 3: type A6 off 63 (0x3f) size 781417602 (0x2e937c82)
# /dev/rwd1c:
type: ESDI
disk: ESDI/IDE disk
label: WDC WD4000YR-01P
flags:
bytes/sector: 512
sectors/track: 63
tracks/cylinder: 16
sectors/cylinder: 1008
cylinders: 16383
total sectors: 781422768
rpm: 3600
interleave: 1
trackskew: 0
cylinderskew: 0
headswitch: 0 # microseconds
track-to-track seek: 0 # microseconds
drivedata: 0
16 partitions:
# size offset fstype [fsize bsize cpg]
a: 781417602 63 RAID # Cyl
0*-775215*
c: 781422768 0 unused 0 0 # Cyl 0
-775220
$ sudo disklabel wd2
# using MBR partition 3: type A6 off 63 (0x3f) size 781417602 (0x2e937c82)
# /dev/rwd2c:
type: ESDI
disk: ESDI/IDE disk
label: WDC WD4000YR-01P
flags:
bytes/sector: 512
sectors/track: 63
tracks/cylinder: 16
sectors/cylinder: 1008
cylinders: 16383
total sectors: 781422768
rpm: 3600
interleave: 1
trackskew: 0
cylinderskew: 0
headswitch: 0 # microseconds
track-to-track seek: 0 # microseconds
drivedata: 0
16 partitions:
# size offset fstype [fsize bsize cpg]
a: 781417602 63 RAID # Cyl
0*-775215*
c: 781422768 0 unused 0 0 # Cyl 0
-775220
$ sudo disklabel raid0
# /dev/rraid0c:
type: RAID
disk: raid
label: fictitious
flags:
bytes/sector: 512
sectors/track: 128
tracks/cylinder: 8
sectors/cylinder: 1024
cylinders: 763103
total sectors: 781417472
rpm: 3600
interleave: 1
trackskew: 0
cylinderskew: 0
headswitch: 0 # microseconds
track-to-track seek: 0 # microseconds
drivedata: 0
16 partitions:
# size offset fstype [fsize bsize cpg]
a: 629145537 63 4.2BSD 2048 16384 323 # Cyl
0*-614399
b: 20971520 629145600 4.2BSD 2048 16384 323 # Cyl 614400
-634879
c: 781417472 0 unused 0 0 # Cyl 0
-763102
d: 20971520 650117120 4.2BSD 2048 16384 323 # Cyl 634880
-655359
e: 83886080 671088640 4.2BSD 2048 16384 323 # Cyl 655360
-737279
f: 20971520 754974720 4.2BSD 2048 16384 323 # Cyl 737280
-757759
> > ----
> >
> > $ cat /etc/raid0.conf
> > START array
> > 1 2 0
>
> > START disks
> > /dev/wd1a
> > /dev/wd2a
> >
> > START layout
> > 128 1 1 1
> >
> > START queue
> > FIFO 100
>
> That's ok.
>
> > $ sudo fdisk wd1
> > Disk: wd1 geometry: 48641/255/63 [781417665 Sectors]
> > Offset: 0 Signature: 0xAA55
> > Starting Ending LBA Info:
> > #: id C H S - C H S [ start: size ]
> >
> ------------------------------------------------------------------------
> > 0: 00 0 0 0 - 0 0 0 [ 0: 0 ] unused
> > 1: 00 0 0 0 - 0 0 0 [ 0: 0 ] unused
> > 2: 00 0 0 0 - 0 0 0 [ 0: 0 ] unused
> > *3: A6 0 1 1 - 48640 254 63 [ 63: 781417602 ] OpenBSD
> >
> > $ sudo fdisk wd2
> > Disk: wd2 geometry: 48641/255/63 [781417665 Sectors]
> > Offset: 0 Signature: 0xAA55
> > Starting Ending LBA Info:
> > #: id C H S - C H S [ start: size ]
> >
> ------------------------------------------------------------------------
> > 0: 00 0 0 0 - 0 0 0 [ 0: 0 ] unused
> > 1: 00 0 0 0 - 0 0 0 [ 0: 0 ] unused
> > 2: 00 0 0 0 - 0 0 0 [ 0: 0 ] unused
> > *3: A6 0 1 1 - 48640 254 63 [ 63: 781417602 ] OpenBSD
>
> Ok.
>
> > $ dmesg
> > OpenBSD 3.7 (ORBITAL.SP) #1: Wed Jul 27 01:29:04 PDT 2005
> > root
orbital.bogo.nu:/usr/src/sys/arch/i386/compile/ORBITAL.SP
>
> > Kernelized RAIDframe activated
> > raid0 (root): (RAID Level 1) total number of sectors is 781417472 (381551
> > MB)
> > dkcsum: wd0 matched BIOS disk 80
> > dkcsum: wd1 had no matching BIOS disk
> > dkcsum: wd2 had no matching BIOS disk
> > root on wd0a
> > rootdev=0x0 rrootdev=0x300 rawdev=0x302
> > raid0: Device already configured!
>
> Looks a little fishy here, what are you trying to do? In any case,
> /etc/raidX.conf is only required with kernels that do not automount, or
> with RAID sets that are not configured to be automounted. I usually
> rename them to /etc/raidX.autoconf or similar to keep the configuration
> in a logical place while not interfering with normal boot.
As far as I can tell, that's because I set the array to autoconfigure and
left raid0.conf lying around. I've moved that file to a safer name but I
don't think it's the cause of the problem.
> Anyway, the most likely issue is some size mismatch - say, a swap space
> configured in the same place on the disk as your RAID array. I'd check
> all disklabels, including that on raid0, with extreme care.
>
> Joachim
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]