Hallo,
Ich verwende OpenBSD 3.9 mit angepassten Kernel (Nur raidframe aktiviert)
Ich habe bei mir ein RAID Typ 5 errichtet (für /home), als 3x 160GB-Platten:
Das Wurzelverzeichnis ist auf einer 3GB-Platte (wd3)
Vor genau einer Woche meldete mir der Statusbericht folgendes:
Ich versuchte, blind wie ich war, mit "raidctl -R /dev/wd2a raid0" eine Rekonstruktion, allerdings passierte nichts. Bei einem weiteren Aufruf von raidctl blockierte dieser Prozess und ließ sich nicht mehr mit kill -9 töten. (top sagte in der Spalte WAIT biowait) Alle Festplattenzugriffe waren dann nicht mehr möglich. (Komplett)
Wie ich erfahren habe, sollte das an dem Parity Status liegen. Also habe ich das Array mit -C initialisiert, und die Parität neu berechnen lassen. Bei irgendwo über 80% bricht die neuberechnung ab.
Hier die komplette dmesg:
Befehle zur rekonstruktion der o.g. Fehlermeldung (insgesamt 3x gemacht, jedesmal die gleichen Fehlermeldungen)
Achja, die raid.conf:
So, jetzt meine Frage an euch:
Oben steht was von "uncorrectable data error". Jedes mal hängt raidctl an der selben Stelle. Gibt es ein Programm zum Prüfen von Festplatten auf Fehler?
Gibt es eine Möglichkeit, diesen Bereich als "Fehlerhaft zu makieren" sodass raidctl diesen Bereich einfach überspringt?
Und die Bonus-Frage ist:
Lohnt es sich jetzt, zu Weihnachten, auf SCSI umzurüsten? (Preislich gesehen) Ein Kontroller für PCI habe ich nicht.
Gruss aus Vechta,
/David
Ich verwende OpenBSD 3.9 mit angepassten Kernel (Nur raidframe aktiviert)
Ich habe bei mir ein RAID Typ 5 errichtet (für /home), als 3x 160GB-Platten:
wd[0,1,2] at pciide1 channel [0,1] drive [0,1]: <PLATINUM 160G 2F7200>
wd[0,1,2]: 16-sector PIO, LBA48, 156334MB, 320173056 sectors
Das Wurzelverzeichnis ist auf einer 3GB-Platte (wd3)
Vor genau einer Woche meldete mir der Statusbericht folgendes:
raid0 Components:
/dev/wd0a: optimal
/dev/wd1a: optimal
/dev/wd2a: failed
No spares.
Parity status: DIRTY
Reconstruction is 100% complete.
Parity Re-write is 100% complete.
Copyback is 100% complete.
Ich versuchte, blind wie ich war, mit "raidctl -R /dev/wd2a raid0" eine Rekonstruktion, allerdings passierte nichts. Bei einem weiteren Aufruf von raidctl blockierte dieser Prozess und ließ sich nicht mehr mit kill -9 töten. (top sagte in der Spalte WAIT biowait) Alle Festplattenzugriffe waren dann nicht mehr möglich. (Komplett)
Wie ich erfahren habe, sollte das an dem Parity Status liegen. Also habe ich das Array mit -C initialisiert, und die Parität neu berechnen lassen. Bei irgendwo über 80% bricht die neuberechnung ab.
Hier die komplette dmesg:
Hosed component: /dev/wd2a.
Hosed component: /dev/wd2a.
raid0: Component /dev/wd0a being configured at row: 0 col: 0
Row: 0 Column: 0 Num Rows: 1 Num Columns: 3
Version: 2 Serial Number: 1234 Mod Counter: 748
Clean: No Status: 0
/dev/wd0a is not clean !
raid0: Component /dev/wd1a being configured at row: 0 col: 1
Row: 0 Column: 1 Num Rows: 1 Num Columns: 3
Version: 2 Serial Number: 1234 Mod Counter: 748
Clean: No Status: 0
/dev/wd1a is not clean !
raid0: Ignoring /dev/wd2a.
raid0 (root)raid0: no disk label
raid0: no disk label
raid0: no disk label
wd1(pciide1:0:1): timeout
type: ata
c_bcount: 16384
c_skip: 0
pciide1:0:1: bus-master DMA error: missing interrupt, status=0x60
wd1a: device timeout reading fsbn 10408320 of 10408320-10408351 (wd1 bn 10408320; cn 10325 tn 11 sn 27), retrying
wd1: soft error (corrected)
wd0(pciide1:0:0): timeout
type: ata
c_bcount: 16384
c_skip: 0
pciide1:0:0: bus-master DMA error: missing interrupt, status=0x60
wd0a: device timeout reading fsbn 52557216 of 52557216-52557247 (wd0 bn 52557216; cn 52140 tn 1 sn 33), retrying
wd0: soft error (corrected)
wd0(pciide1:0:0): timeout
type: ata
c_bcount: 16384
c_skip: 0
pciide1:0:0: bus-master DMA error: missing interrupt, status=0x60
wd0a: device timeout reading fsbn 128477760 of 128477760-128477791 (wd0 bn 128477760; cn 127458 tn 1 sn 33), retrying
wd0: soft error (corrected)
raid0: no disk label
raid0: no disk label
raid0: no disk label
raid0: no disk label
raid0: no disk label
wd2(pciide1:1:0): timeout
type: ata
c_bcount: 16384
c_skip: 0
pciide1:1:0: bus-master DMA error: missing interrupt, status=0x61
wd2a: device timeout reading fsbn 217666784 of 217666784-217666815 (wd2 bn 217666784; cn 215939 tn 4 sn 20), retrying
wd2: soft error (corrected)
raid0: no disk label
raid0: no disk label
raid0: no disk label
wd2(pciide1:1:0): timeout
type: ata
c_bcount: 16384
c_skip: 0
pciide1:1:0: bus-master DMA error: missing interrupt, status=0x61
wd2a: device timeout reading fsbn 278840864 of 278840864-278840895 (wd2 bn 278840864; cn 276627 tn 13 sn 29), retrying
wd2: soft error (corrected)
wd2a: uncorrectable data error reading fsbn 296250528 of 296250528-296250559 (wd2 bn 296250528; cn 293899 tn 5 sn 21), retrying
wd2a: uncorrectable data error reading fsbn 296250528 of 296250528-296250559 (wd2 bn 296250528; cn 293899 tn 5 sn 21), retrying
wd2a: uncorrectable data error reading fsbn 296250528 of 296250528-296250559 (wd2 bn 296250528; cn 293899 tn 5 sn 21), retrying
wd2: transfer error, downgrading to Ultra-DMA mode 3
wd2(pciide1:1:0): using PIO mode 4, Ultra-DMA mode 3
wd3(pciide1:1:1): using PIO mode 4, Ultra-DMA mode 2
wd2a: uncorrectable data error reading fsbn 296250528 of 296250528-296250559 (wd2 bn 296250528; cn 293899 tn 5 sn 21), retrying
wd2a: uncorrectable data error reading fsbn 296250547 of 296250528-296250559 (wd2 bn 296250547; cn 293899 tn 5 sn 40), retrying
wd2a: uncorrectable data error reading fsbn 296250547 of 296250528-296250559 (wd2 bn 296250547; cn 293899 tn 5 sn 40)
raid0: IO Error. Marking /dev/wd2a as failed.
raid0: node (Rod) returned fail, rolling backward
Unable to verify parity: can't read the stripe.
Could not verify parity.
raid0: Error re-writing parity!
raid0: no disk label
raid0: no disk label
raid0: no disk label
raid0 detached
Befehle zur rekonstruktion der o.g. Fehlermeldung (insgesamt 3x gemacht, jedesmal die gleichen Fehlermeldungen)
raidctl -C /etc/raid.conf raid0
raidctl -I 12345 raid0
raidctl -i raid0
raidctl -u raid0
Achja, die raid.conf:
START array
1 3 0
START disks
/dev/wd0a
/dev/wd1a
/dev/wd2a
START layout
32 1 1 5
START queue
fifo 100
So, jetzt meine Frage an euch:
Oben steht was von "uncorrectable data error". Jedes mal hängt raidctl an der selben Stelle. Gibt es ein Programm zum Prüfen von Festplatten auf Fehler?
Gibt es eine Möglichkeit, diesen Bereich als "Fehlerhaft zu makieren" sodass raidctl diesen Bereich einfach überspringt?
Und die Bonus-Frage ist:
Lohnt es sich jetzt, zu Weihnachten, auf SCSI umzurüsten? (Preislich gesehen) Ein Kontroller für PCI habe ich nicht.
Gruss aus Vechta,
/David