RAID
http://hwraid.le-vert.net/
Пакеты Debian - http://hwraid.le-vert.net/debian/
Пакеты Ubuntu - http://hwraid.le-vert.net/ubuntu/
HP Smart Array
hpssacli
Проверить статус и узнать слоты контроллеров:
sudo hpssacli ctrl all show status
Проверить диски контроллера на слоте 1:
sudo hpssacli ctrl slot=1 pd all show
Проверить статус логических дисков для контроллера на слоте 1:
sudo hpssacli ctrl slot=1 logicaldrive all show status
Пример, вывод статуса во время восстановления диска:
logicaldrive 1 (279.4 GB, 1): OK logicaldrive 2 (2.7 TB, 1+0): Recovering, 55% complete
Посмотреть полную информацию о контроллерах:
sudo hpssacli ctrl all show config detail
Adaptec
Adaptec failureReasonCode
0 or 0x00 Unknown failure 1 or 0x01 Device not ready 2 or 0x02 Selection timout 3 or 0x03 User marked the drive dead 4 or 0x04 Hardware error 5 or 0x05 Bad block 6 or 0x06 Retries failed 7 or 0x07 No Response from drive during discovery 8 or 0x08 Inquiry failed 9 or 0x09 Probe(Test Unit Ready/Start Stop Unit) failed A or 0x0A Bus discovery failed
Перевести дату в логе из unixtime:
arcconf GETLOGS 1 ... | perl -p -e 's/(date=\"|time=\")([\d]+)(.*$)/$1.localtime($2).$3/ei'
arcconf
Если файловая система в режим только чтение. Для запуска arcconf необходимо смонтировать:
mount -t tmpfs none /var/lock
Получить информацию о статусе контроллера:
arcconf GETSTATUS 1
Получить информацию о котроллере:
arcconf GETCONFIG 1 AD
Получить информацию о логических дисках:
arcconf GETCONFIG 1 LD
Получить информацию о физических дисках:
arcconf GETCONFIG 1 PD
Для операций с дисками понадобится Reported Channel из строчки:
Reported Channel,Device(T:L) : 0,2(2:0)
Получить информацию S.M.A.R.T.
arcconf GETSMARTSTATS 1
Отключить кэш диска:
arcconf SETCACHE 1 DEVICE 0 2 wt
Включить ZMM кэш логического диска (кэш с подключеннием к батареи)
arcconf SETCACHE 1 LOGICALDRIVE 0 wbb
Пометить диск как сбойный и «извлечь» его:
arcconf SETSTATE 1 DEVICE 0 2 DDD arcconf SETSTATE 1 DEVICE 0 2 RDY
Подсветить диск:
arcconf IDENTIFY 1 DEVICE 0 2
Обновление BIOS контроллера:
Скачиваем последнюю прошивку (на примере Adaptec 5805) и распаковываем:
unzip 5805_fw_b18948.exe
получаем несколько файлов as580501.ufi-as580507.ufi.
Прошиваем:
arcconf romupdate 1 as5805
Ошибки
aac_read: aac_fib_send failed with status: -12.
aac_write: aac_fib_send failed with status: -12
Решение: Прописать в параметры загрузки ядра (/etc/default/grub) aacraid.dacmode=0 или mem=4G
Ссылки
http://sysadm.pp.ua/linux/aacraid-monitoring.html
http://www.thislinux.org/2012/11/adaptec-6405-firmware-update.html - Adaptec 6405 firmware update
https://wiki.colobridge.net/%D0%BF%D0%BE%D0%BB%D0%B5%D0%B7%D0%BD%D0%BE%D0%B5/%D1%81%D0%BE%D0%B2%D0%B5%D1%82%D1%8B/%D1%83%D0%BF%D1%80%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5_raid_adaptec_%D1%81_%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E_arcconf - Управление raid adaptec с помощью arcconf
LSI
megacli
- -NoLog - отключить запись лога в файл (создаётся в текущей директории)
Значения Firmware state:
- Online - работоспособен
- Offline - отключён, не учавствует в работе RAID
- JBOD - не входит в состав RAID, независимый диск
- Spun Up - «вращается», активен
- Spun Down - «не вращается» (может режим энергосбережения)
- Unconfigured Bad - есть аппаратные или логические ошибки
- Unconfigured Good - готов к добавлению в массив или назначению в Hot Spare
Получить общее количество дисков в адаптере:
megacli -PDGetNum -aALL -NoLog
Получить информацию о физических дисках:
megacli -PDList -aALL -NoLog megacli -PDList -aALL -NoLog | grep -e 'Enclosure Device ID:' -e 'Slot Number:' -e 'Firmware state' -e 'Device Id'
Autorebuild:
megacli -AdpAutoRbld -Dsply -a0 #состояние megacli -AdpAutoRbld -Enbl -a0 #включить megacli -AdpAutoRbld -Dsbl -a0 #отключить
E - Enclosure ID, S - Slot Number, D - Device Id
HotSpare:
megacli -PDHSP -Rmv -PhysDrv [E:S] -a0 #удалить диск megacli -PDHSP -Set -PhysDrv [E:S] -a0 #добавить диск
Rebuild:
megacli -PDRbld -ShowProg -physdrv[E:S] -a0 #прогресс megacli -PDRbld -Start -physdrv[E:S] -a0 #запустить megacli -PDRbld -Stop -physdrv[E:S] -a0 #остановить
Извлечение:
megacli -PDOffline -PhysDrv [E:S] -a0 #перевести в Offline megacli -PDMarkMissing -PhysDrv [E:S] -a0 #пометить как извлечённый megacli -PDPrpRmv -PhysDrv [E:S] -a0 #удалить диск из массива RAID
Замена:
megacli -PdGetMissing -a0 #получить информацию об извлечённых дисках megacli -PdReplaceMissing -PhysDrv [E:S] -ArrayNA -rowNR -a0 #заменить диск (номера Array (NA) и row (NR) получены от команды выше)
Если диск в состоянии JBOD:
megacli -PdMakeGood -PhysDrv[E:S] -Force -a0
Подсветка:
megacli -PdLocate -start -PhysDrv [E:S] -a0 #включить megacli -PdLocate -stop -PhysDrv [E:S] -a0 #выключить
