Спокойно, може да го направиш да ребилдва за по- малко от 1 мин.
Трябва да му сложиш опция 'Bitmap'. Това са някави запазени сектори в началото на раида, където отбелязва с кои сектори в момента работи. И след reset, когато масива е отбелязан 'dirty' се съобразява с тази 'Bitmap' таблица и само тях ребилдва.
http://linux-raid.osdl.org/index.php/Bitmapако си направил всичко като трябва ще ти излезе така:
]mdadm --detail /dev/md2
/dev/md2:
Version : 00.90.03
Creation Time : Mon Apr 6 15:37:40 2009
Raid Level : raid6
Array Size : 967739392 (922.91 GiB 990.97 GB)
Used Dev Size : 483869696 (461.45 GiB 495.48 GB)
Raid Devices : 4
Total Devices : 4
Preferred Minor : 2
Persistence : Superblock is persistent
Intent Bitmap : Internal
Update Time : Wed Oct 7 14:15:01 2009
State : active
Active Devices : 4
Working Devices : 4
Failed Devices : 0
Spare Devices : 0
Chunk Size : 64K
UUID : dd10fe25:7fc77242:a10f6956:09268716
Events : 0.20312
Number Major Minor RaidDevice State
0 8 3 0 active sync /dev/sda3
1 8 19 1 active sync /dev/sdb3
2 8 35 2 active sync /dev/sdc3
3 8 51 3 active sync /dev/sdd3
големият недостатък е че това е една от най-бавните опции. Обаче според мен това е за предпочитане, защото ако през време на един такъ дълъг rebuild, ти гръмне един диск ще загубиш масива. Или пък ако през време на дълъг rebuild му биеш резета, масива няма да стартира защото ще е едновремменно и 'dirty' и 'degraded'
сега, това рековери върви между 1000-1200к/сек. опитах да вдигна скороста като сетна:
echo 5000000 >/proc/sys/dev/raid/speed_limit_max
за да вдигна скороста но не става.
не е това. то пак трябва тази опция да е голяма, за да не се ограничи и от нея. Но от нея скоростта не се повлиява.
трябва да си поиграеш с тези двете:
echo 2048 > /sys/block/md1/md/stripe_cache_size
blockdev --setra 8192 /dev/md1
и двете опции трябва да вървят в синхрон. Само с промяната на едната не става. Внимавай с stripe_cache_size и не задавай много големи числа защото много памет използва. спокойно може да направиш и 1GB буфер.
Използваната памет на буфера е = 4096*4(броят-дискове)*stripe_cache_size
недей да качваш повече от 8192/16384 за (stripe_cache_size)/setra
Въпроса ми е нормално ли е това, единиа диск е спайр, ако загине единиа от трите четвъртия пак ли за 5 дена ще се билдне?
да защото ще трябва да го ребилдне целият. Пълният rebuild винаги е пълен ребилд - от край до край. На съвременните дискове пълният ребилд е 2 часа при 500GB-тови дискове.
Вместо 3 диска RAID5 + 1 spare, не е ли по-добре 4диска RAID6 без spare.