![]() |
Replace faulty disk from software raid |
![]() ![]() ![]() ![]() |
ВАЖНО: При нови дискове от които се изисква буутване трябва да се избере опция DOS!!!
Ако имате стар диск с групи те се изтриват така:
# df
Ако роота е на md125, а искаме да изтрием:
# cat /proc/mdstat
# mdadm --stop /dev/md126
# mdadm --remove /dev/md126
# mdadm --zero-superblock /dev/sda1;mdadm --zero-superblock /dev/sdb1 - важно е да се изтрие този диск който не е в групата на /, т.е. не е участник в md125!!!
sfdisk -d /dev/sda | sfdisk /dev/sdb - копира дяловете от първия диск на втория
# reboot
При нов диск:
# cat /proc/mdstat - гледа се кой са участниците в активния райд - примерно /dev/md127 с участник /dev/sdb1
#
# mdadm --manage /dev/md127 --add /dev/sda1 - добавя диска # mdadm --grow /dev/md127 --raid-devices=4 - при разширяване с нов диск
ИЗЧАКВА СЕ ДА СЕ СИНХРОНИЗИРА РАЙДА!!! # reboot
Ако след рестарта е монтирано само за четене:
# fsck.reiserfs /dev/md127
# fsck.reiserfs --rebuild-tree /dev/md127
# reboot
# grub2-install /dev/sda
# grub2-install /dev/sdb
Създаване на райд:
# sfdisk -d /dev/sda | sfdisk /dev/sdb - копира дяловете от първия диск на втория# mdadm --create /dev/md0 --level=1 --raid-devices=2 /dev/sda1 /dev/sdb1
# echo 'DEVICE /dev/sda /dev/sdb' > /etc/mdadm.conf
# mdadm --detail --scan >> /etc/mdadm.conf
# mcedit /etc/fstab - correct partitions
# emerge -av mdadm
# rc-update add mdadm default
# nano/etc/default/grub
---------------------------------------GRUB_CMDLINE_LINUX_DEFAULT="domdadm"
---------------------------------------# grub2-mkconfig -o /boot/grub/grub.cfg
# grub2-install --no-floppy /dev/sda
# grub2-install --no-floppy /dev/sdb
За мониторинг на рейдовете
# echo 'MAILADDR ceco@domain.com' > /etc/mdadm.conf
# mdadm --monitor --scan --test --oneshot - изпраща тестов мейл
# rc-update add mdadm default
MEGARAID
# megacli -PDList -a0 - list phisical disks.DEVID=252 PHYSDRV=X # set to right slot, be careful
# megacli -LDInfo -L0 -a0 - list virtual drive status
# megacli -PDlist -a0|grep Firmware - show status of disks
# megacli -PDMakeGood -PhysDrv[245:13] -a0 - mark disk good
# megacli -CfgForeign -Scan -a0 - gleda za novi diskove
# megacli -CfgForeign -Clear -a0 - podgotvq diska za rebuild
# megacli -PdReplaceMissing -PhysDrv[245:13] -array0 -row1 -a0 - pravi go chast ot grupata
# megacli -PDRbld -Start -PhysDrv[245:13] -a0 - startira rebuild
# megacli -PDRbld -ShowProg -PhysDrv [245:13] -aALL - show rebuilding process
DEVID=$(megacli -EncInfo -aALL | grep 'Device ID' | awk '{print $4}')
megacli -PdMarkMissing -PhysDrv [$DEVID:$PHYSDRV] -a $ADAPTER -NoLog
megacli -PdPrpRmv -PhysDrv [$DEVID:$PHYSDRV] -a $ADAPTER -NoLog # no problem if fails
megacli -PDMakeGood -PhysDrv [$DEVID:$PHYSDRV] -a $ADAPTER -NoLog