Nieuws:

Welkom, Gast. Alsjeblieft inloggen of registreren.
Heb je de activerings-mail niet ontvangen?

Auteur Topic: RAID6 herstellen.  (gelezen 5536 keer)

Offline Johan van Dijk

  • Administrator
    • johanvandijk
Re: RAID6 herstellen.
« Reactie #25 Gepost op: 2013/09/26, 11:24:04 »
In dat geval klopt de volgorde cdef wel.
Dan kan je de instructies uit antwoord #8 nog eens doen, maar laat dan de regel sudo mdadm --readonly /dev/md0 weg.
Bij de fsck opdracht moet je de -n weglaten.

Pas nu kan er op de schijven geschreven worden en zal je probleem opgelost worden. Of in het ergste geval is je data voorgoed weg als er toch nog iets niet klopt...

Re: RAID6 herstellen.
« Reactie #26 Gepost op: 2013/09/26, 14:20:49 »
In de bestandje "nieuw.status" is alleen het volgende weggeschreven, "fsck from util-linux 2.20.1".

shinger@Koerdistan-NAS:~$ sudo mdadm --stop /dev/md0
[sudo] password for shinger:
mdadm: stopped /dev/md0
shinger@Koerdistan-NAS:~$ sudo mdadm --create --assume-clean --level=6 --raid-devices=4 --chunk=64 /dev/md0 /dev/sdc1 /dev/sdd1 /dev/sde1 /dev/sdf1
mdadm: /dev/sdc1 appears to be part of a raid array:
    level=raid6 devices=4 ctime=Thu Sep 26 03:31:44 2013
mdadm: /dev/sdd1 appears to be part of a raid array:
    level=raid6 devices=4 ctime=Thu Sep 26 03:31:44 2013
mdadm: /dev/sde1 appears to be part of a raid array:
    level=raid6 devices=4 ctime=Thu Sep 26 03:31:44 2013
mdadm: /dev/sdf1 appears to be part of a raid array:
    level=raid6 devices=4 ctime=Thu Sep 26 03:31:44 2013
Continue creating array? yes
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md0 started.
shinger@Koerdistan-NAS:~$ sudo fsck /dev/md0 >> nieuw.status
e2fsck 1.42 (29-Nov-2011)
e2fsck: need terminal for interactive repairs
shinger@Koerdistan-NAS:~$ cp nieuw.status /media/RAID1/completed/
shinger@Koerdistan-NAS:~$ sudo /usr/share/mdadm/checkarray -af
checkarray: I: check queued for array md0.
checkarray: I: selecting high I/O scheduling class and 0 niceness for resync of md0.


watch cat /proc/mdstat

Every 2.0s: cat /proc/mdstat                                        Thu Sep 26 14:16:54 2013

Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
md0 : active raid6 sdf1[3] sde1[2] sdd1[1] sdc1[0]
      3906764416 blocks super 1.2 level 6, 64k chunk, algorithm 2 [4/4] [UUUU]
      [>....................]  check =  0.2% (4383200/1953382208) finish=1200.1min speed=270
65K/sec

unused devices: <none>

Oke, nu voor 20 uur wachten :D.



Offline Johan van Dijk

  • Administrator
    • johanvandijk
Re: RAID6 herstellen.
« Reactie #27 Gepost op: 2013/09/26, 14:29:19 »
Dan zou het kunnen dat de fsck helemaal niet is gedaan, maar hopelijk valt het mee :)
Veel succes!

Offline Johan van Dijk

  • Administrator
    • johanvandijk
Re: RAID6 herstellen.
« Reactie #28 Gepost op: 2013/09/26, 14:32:34 »
Als je genoeg geheugen in de server hebt kan je dit wel proberen om de sync sneller te maken. Dit gebruik ik hier ook in /etc/rc.local.

sudo -i
blockdev -q --setra 2048 /dev/sdc
blockdev -q --setra 2048 /dev/sdd
blockdev -q --setra 2048 /dev/sde
blockdev -q --setra 2048 /dev/sdf
echo 16384 > /sys/block/md0/md/stripe_cache_size
Dit verbetert bij mij ook de prestaties bij normaal gebruik. Een resync gaat hier met ruim 80 MB/s

Re: RAID6 herstellen.
« Reactie #29 Gepost op: 2013/09/26, 15:27:06 »
Ik heb maar 1 GB ram in mijn NAS. Ik kies in dit geval wel voor rustig afwachten, in plaats van ongeduldig te zijn. Heb niet voor niks voor RAID6 gekozen omdat ik mijn data behouden wil hebben :D.  Andere keer was het al fout gegaan (alle data kwijt geraakt), maar toen was alles vanuit origninele (Thecus Linux -- Linux versie van de fabrikant) OS op LVM gezet.

Re: RAID6 herstellen.
« Reactie #30 Gepost op: 2013/09/27, 13:53:21 »
Johan, hij is nu klaar met syncen, maar ik kan nog steeds niet mounten.

Ik heb alle andere taken gedaan zoals het wijzigen van UUID in de mdadm.conf.

shinger@Koerdistan-NAS:/mnt$ sudo mount -a
mount: wrong fs type, bad option, bad superblock on /dev/md0,
       missing codepage or helper program, or other error
       In some cases useful info is found in syslog - try
       dmesg | tail  or so
shinger@Koerdistan-NAS:/mnt$ sudo dmesg | tail
[   86.955884] type=1400 audit(1380282084.606:7): apparmor="STATUS" operation="profile_replace" name="/usr/lib/connman/scripts/dhclient-script" pid=964 comm="apparmor_parser"
[   86.968958] type=1400 audit(1380282084.622:8): apparmor="STATUS" operation="profile_load" name="/usr/sbin/mysqld" pid=965 comm="apparmor_parser"
[   86.986507] type=1400 audit(1380282084.638:9): apparmor="STATUS" operation="profile_load" name="/usr/sbin/tcpdump" pid=967 comm="apparmor_parser"
[   87.179851] type=1400 audit(1380282084.830:10): apparmor="STATUS" operation="profile_replace" name="/usr/sbin/mysqld" pid=1035 comm="apparmor_parser"
[   95.060214] init: plymouth-upstart-bridge main process (930) killed by TERM signal
[  310.240015] EXT4-fs (sdb1): error count: 978
[  310.240021] EXT4-fs (sdb1): initial error at 1351878680: ext4_mb_release_inode_pa:3656
[  310.240025] EXT4-fs (sdb1): last error at 1375149151: ext4_mb_generate_buddy:749
[  595.129953] EXT4-fs (md0): ext4_check_descriptors: Checksum for group 1920 failed (36806!=35430)
[  595.130047] EXT4-fs (md0): group descriptors corrupted!

Edit: Ik heb wat gevonden over de group descriptors, maar ik wacht nog even wat jij adviseert. http://shearer.org/Ext4_recovery
« Laatst bewerkt op: 2013/09/27, 14:01:59 door shinger »

Offline Johan van Dijk

  • Administrator
    • johanvandijk
Re: RAID6 herstellen.
« Reactie #31 Gepost op: 2013/09/27, 15:47:36 »
Wat daar staat kan je inderdaad wel proberen ja, iets anders zou ik ook niet weten.

Overigens ben ik de komende week niet op het forum, dus mocht je er niet uitkomen dan moet je niet op mij wachten.

Re: RAID6 herstellen.
« Reactie #32 Gepost op: 2013/09/27, 16:17:44 »

Ik begrijp een paar dingen niet.


- stop. Transfer the contents of the corrupted device somewhere else using a block-level transfer tool, dd works fine (including over ssh.)
- Check that the copy you made appears to be identically corrupted :-)
- Now make that copy read-only, or immutable, or whatever else will reduce the risk of you accidentally writing to it.

shinger@Koerdistan-NAS:~$ sudo  dumpe2fs /dev/md0 | grep Backup
[sudo] password for shinger:
dumpe2fs 1.42 (29-Nov-2011)
dumpe2fs: Corrupt extent header while reading journal super block

Ik begrijp ook niet wat hij hiermee bedoelt. Welke block number? hoe kom ik er achter??

You can then specify one of the backup superblocks to fsck like this:

 fsck.ext4 -b YOUR_BACKUP_BLOCK_NUMBER /dev/YOUR_DEVICE

Offline Johan van Dijk

  • Administrator
    • johanvandijk
Re: RAID6 herstellen.
« Reactie #33 Gepost op: 2013/09/27, 17:16:19 »
Dat is een veiligheidsmaatregel. Hij raadt aan om een rechtstreekse kopie te maken van de ruwe data. Als je dan iets verknoeit kan je het nog een keer proberen en ben je niet direct alles kwijt.
Mocht je dus genoeg ruimte hebben op een andere schijf/array dan kan je dat doen.

Als dumpe2fs geen backups van de superblocks kan vinden, dan maakt dat de reparatie een stuk lastiger. Dat commando kan wel even duren, dus niet meteen afbreken als je een error ziet.

De normale output is iets als dit:
$ sudo dumpe2fs /dev/md3 | grep Backup                                                                                                                                                         
[sudo] password for johan:
dumpe2fs 1.42 (29-Nov-2011)
  Backup superblock at 32768, Group descriptors at 32769-32943
  Backup superblock at 98304, Group descriptors at 98305-98479
  Backup superblock at 163840, Group descriptors at 163841-164015
  Backup superblock at 229376, Group descriptors at 229377-229551
  Backup superblock at 294912, Group descriptors at 294913-295087
  Backup superblock at 819200, Group descriptors at 819201-819375
  Backup superblock at 884736, Group descriptors at 884737-884911
  Backup superblock at 1605632, Group descriptors at 1605633-1605807
  Backup superblock at 2654208, Group descriptors at 2654209-2654383
  Backup superblock at 4096000, Group descriptors at 4096001-4096175
  Backup superblock at 7962624, Group descriptors at 7962625-7962799
  [knip, nog een hoop van hetzelfde]

In principe zou je één van deze blocks kunnen gebruiken als backup. Bijv. zo:
fsck.ext4 -b 32768 /dev/md3
Zo gebruikt fsck één van de backup superblocks, in plaats van de normale die blijkbaar corrupt is.

Re: RAID6 herstellen.
« Reactie #34 Gepost op: 2013/10/03, 03:38:07 »
Ik heb helaas euthanasie gepleegd. Voor de tweede keer is mij dit nu overkomen. De eerste keer vanwege verkeerde instellingen en nu vanwege een bug in EXT4. Ik ben nu RAID6 helemaal opnieuw laten opzetten en met EXT3.

Helaas mocht het niet baten, maar weer eens wat geleerd. Johan in iedere geval bedankt voor je tijd en moeite.

Offline jan11000

  • Lid
Re: RAID6 herstellen.
« Reactie #35 Gepost op: 2013/10/06, 10:51:00 »
Ik heb helaas euthanasie gepleegd. Voor de tweede keer is mij dit nu overkomen. De eerste keer vanwege verkeerde instellingen en nu vanwege een bug in EXT4. Ik ben nu RAID6 helemaal opnieuw laten opzetten en met EXT3.

Helaas mocht het niet baten, maar weer eens wat geleerd. Johan in iedere geval bedankt voor je tijd en moeite.
Nu weet je ook waarom je een backup moet maken indien je files belangrijk zijn.
Een raid is nooit een backup, hoogstens een onderdeel van een backup.
Bij het defect gaan van je raid(backup) zou je in theorie, gewoon vanaf een extra backup, alles terug kunnen zetten, zodat je weer een echte backup hebt.
Alle hardware op een pc aangesloten is geen backup, want voeding die ontploft en alle hd's kapot maakt, dan heb je nog niks.
Files kopieren naar meerdere hd's is geen backup, want je weet niet zeker of je files gelijk zijn, na een verify, ben je wel zeker dat ze hetzelfde zijn.
Een backup maken is zeer moeilijk en je hebt veel tijd nodig.