Образовательный проект «SnakeProject» Михаила Козлова

Навигация

⇒ FreeBSD and Nix ⇐

CISCO

Voice(Asterisk\Cisco)

Microsoft

Powershell

Python

SQL\T-SQL

Общая

WEB Разработка

ORACLE SQL \ JAVA

Мото

Стрельба, пневматика, оружие

Саморазвитие и психология


LSI MegaRAID обновление версии firmware



 
LSI MegaRAID обновление версии firmware


Перед тем как начать УБЕДИТЕЛЬНО ГОВОРЮ: прочитайте сначала статью ПОЛНОСТЬЮ!!!!!!


Сами прошивочки тут:
https://www.broadcom.com/site-search?q=megacli


# mfiutil show adapter
mfi0 Adapter:
    Product Name: LSI MegaRAID SAS 9266-4i
   Serial Number: SV21716100
        Firmware: 23.33.0-0023
     RAID Levels: JBOD, RAID0, RAID1, RAID5, RAID6, RAID10, RAID50
  Battery Backup: present
           NVRAM: 32K
  Onboard Memory: 1024M
  Minimum Stripe: 8K
  Maximum Stripe: 1M


Обновление версии firmware:
# MegaCli -adpfwflash -F mr2208fw.rom -aAll

Обязательно перезагружаемся:
# shutdown -r now

Откат версии firmware:
# MegaCli -adpfwflash -F mr2208fw.rom -NoVerChk -aAll


# mfiutil show adapter
mfi0 Adapter:
    Product Name: LSI MegaRAID SAS 9266-4i
   Serial Number: SV21716100
        Firmware: 23.34.0-0019
     RAID Levels: JBOD, RAID0, RAID1, RAID5, RAID6, RAID10, RAID50
  Battery Backup: present
           NVRAM: 32K
  Onboard Memory: 1024M
  Minimum Stripe: 8K
  Maximum Stripe: 1M


Если что-то пошло не так....

У меня после перезагрузки случилась катастрофа, сервер FreeBSD на zfs отказывался грузиться
Мой пул zfs назывался tank


Чего только не попробовал за 3е суток мата...


Первое, что увидел

При загрузке ошибка:
Trying to mount root from zfs:tank []...
Mounting from zfs:tank failed with error 2 Unknown filesystem


При загрузке еще ошибки:
zfs io error all block copies unavailable warning error reading /boot/loader.conf


Пробую грузиться из пукта 3 при загрузке:

ls /boot

Ага, кто-то обновлял систему и забыл год назад перезагрузиться!!!
Вижу kernel.old, пробую грузиться со старого ядра

unload
load /boot/kernel.old/kernel
load /boot/kernel.old/opensolaris.ko
load /boot/kernel.old/zfs.ko

load -t cache /boot/zfs/zpool.cache

set vfs.root.mountfrom=zfs:tank

set module_path=/boot/kernel.old;/boot/modules

boot


Не вышло, пробуем еще раз:

ls /boot

unload
load /boot/kernel.old/kernel
load /boot/kernel.old/opensolaris.ko
load /boot/kernel.old/zfs.ko

menu

Пункт выбираем предыдущий (kernel) пункт "5"

Грузимся (внезапно прокатило)

Пробую прописать в лоадер:
vi /boot/defaults/loader.conf
zfs_load="YES"
vfs.root.mountfrom="zfs:tank"


zpool list
NAME   SIZE  ALLOC   FREE  CKPOINT  EXPANDSZ   FRAG    CAP  DEDUP  HEALTH  ALTROOT
tank  10.8T  10.3T   522G        -         -    78%    95%  1.00x  ONLINE  -


zfs list
NAME                                USED  AVAIL  REFER  MOUNTPOINT
tank                               7.71T   132G  25.4K  none
tank/ROOT                          1.89G   132G  25.4K  none
tank/ROOT/default                  1.89G   132G  1.89G  /


zpool get bootfs tank
NAME  PROPERTY  VALUE              SOURCE
tank  bootfs    tank/ROOT/default  local


Равнозначно:
zpool set bootfs=tank/ROOT/default tank


cat /etc/rc.conf | grep zfs
zfs_enable="YES"


Не помогло, перезагрузился и ошибки снова
Пробуем по другому, грузимся до ошибок и загружаем диск


mountroot> cd9660:/dev/cd0
Trying to mount root from cd9660:/dev/cd0 []...
g_vfs_done():cd0[READ(offset=32768, length=2048)]error = 6

И тут засада!!!

Вот варианты, как прокатило (разные диски вставлял):
?
mountroot> cd9660:/dev/iso9660/12_0_RELEASE_AMD64_CD rw
mountroot> cd9660:/dev/iso9660/12_0_RELEASE_AMD64_DVD rw
mountroot> cd9660:/dev/iso9660/11_2_RELEASE_AMD64_DVD rw


Или так из 3его пункта:
unload
lsdev
set currdev=cd0
boot


Но есть момент, с диска все в рионли монтируется
Загружайтесь с флешки и делайте моунт корня на rw


Далее поднимаем ssh на LiveCD


ifconfig igb0 192.168.1.9 255.255.255.0
ifconfig igb0 up

route add default 192.168.1.1


mkdir /tmp/etc
mount_unionfs /tmp/etc /etc

passwd root

vi /etc/resolv.conf
nameserver 8.8.8.8

vi /etc/ssh/sshd_config
PermitRootLogin yes


/etc/rc.d/sshd onestart


mount -o rw /

Импортирую и монтирую свой многострадальный пул:
zpool import -R /mnt tank/ROOT/default
mount -t zfs tank/ROOT/default /mnt

 

Кстати о птичках, еще когда вылезет ошибка загрузчика, делаем так:
cant find /boot/zfsloader

gpart bootcode -b /mnt/boot/pmbr -p /mnt/boot/gptzfsboot -i 1 mfid0

Где mfid0 имя устройства, у меня их 4 было, делаем на каждый
Это связано с новой версией загрузчика 12й версии FreeBSD


В общем тупо забираем загрузчик и ядро с нашей флешки
Копируем в систему многострадальную:

rm -rf /mnt/boot/*
cp -R /mnt/boot.orig/* /mnt/boot/
ls -l /mnt/boot/kernel.old/


Грузимся, у меня прошло на ура...


Устати еще кэш как включить на дисках:

mfiutil show volumes
mfi0 Volumes:
  Id     Size    Level   Stripe  State   Cache   Name
 mfid0 ( 2794G) RAID-0      64K OPTIMAL Writes
 mfid1 ( 2794G) RAID-0      64K OPTIMAL Writes
 mfid2 ( 2794G) RAID-0      64K OPTIMAL Writes
 mfid3 ( 2794G) RAID-0      64K OPTIMAL Writes


MegaCli -LDSetProp -Cached -Immediate -Lall -aAll


Set Cache Policy to Cached on Adapter 0, VD 0 (target id: 0) success
Set Cache Policy to Cached on Adapter 0, VD 1 (target id: 1) success
Set Cache Policy to Cached on Adapter 0, VD 2 (target id: 2) success
Set Cache Policy to Cached on Adapter 0, VD 3 (target id: 3) success


mfiutil show volumes
mfi0 Volumes:
  Id     Size    Level   Stripe  State   Cache   Name
 mfid0 ( 2794G) RAID-0      64K OPTIMAL Enabled
 mfid1 ( 2794G) RAID-0      64K OPTIMAL Enabled
 mfid2 ( 2794G) RAID-0      64K OPTIMAL Enabled
 mfid3 ( 2794G) RAID-0      64K OPTIMAL Enabled


Все, на этом завершаем

 


Комментарии пользователей

Эту новость ещё не комментировалиНаписать комментарий
Анонимам нельзя оставоять комментарии, зарегистрируйтесь!

Контакты Группа ВК Сборник материалов по Cisco, Asterisk, Windows Server, Python и Django, SQL и T-SQL, FreeBSD и LinuxКод обмена баннерами Видео к IT статьям на YoutubeВидео на другие темы Смотреть
Мои друзья: Советы, помощь, инструменты для сис.админа, статическая и динамическая маршрутизация, FreeBSD

© Snakeproject.ru создан в 2013 году.
При копировании материала с сайта - оставьте ссылку.
Весь материал на сайте носит ознакомительный характер,
за его использование другими людьми, автор ответственности не несет.

Рейтинг@Mail.ru
Рейтинг@Mail.ru Яндекс.Метрика





Поддержать автора и проект