Replace faulty disk from software raid
Търсене:
search   add   edit   back

ВАЖНО: При нови дискове от които се изисква буутване трябва да се избере опция 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!!!
# reboot

При нов диск:
# cat /proc/mdstat - гледа се кой са участниците в активния райд - примерно /dev/md127 с участник /dev/sdb1
#
sfdisk -d /dev/sda | sfdisk /dev/sdb - копира дяловете от първия диск на втория
# 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.
# 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=252 PHYSDRV=X # set to right slot, be careful
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