Вопрос или проблема
Мой Megaraid больше не работает после перехода на Ubuntu 24.04, и мои диски (14 ТБ), подключенные к Raid, больше не отображаются. Я уже обновил прошивку megaraid до последней версии.
Я не знаю, что мне делать.
/dev$ sudo fdisk -l
noktoo@cloudy:/dev$ sudo fdisk -l
Disk /dev/loop0: 44.44 MiB, 46596096 bytes, 91008 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk /dev/loop1: 55.36 MiB, 58052608 bytes, 113384 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk /dev/nvme0n1: 953.87 GiB, 1024209543168 bytes, 2000409264 sectors
Disk model: SAMSUNG MZVLB1T0HBLR-00000
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: F924D847-3D05-4213-95CD-4FD389414275
Device Start End Sectors Size Type
/dev/nvme0n1p1 2048 1050623 1048576 512M EFI System
/dev/nvme0n1p2 1050624 3147775 2097152 1G Linux filesystem
/dev/nvme0n1p3 3147776 2000406527 1997258752 952.4G Linux filesystem
Disk /dev/mapper/ubuntu--vg-ubuntu--lv: 200 GiB, 214748364800 bytes, 419430400 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
journalctl -b –no-pager –grep “mega”
noktoo@cloudy:/dev$ journalctl -b --no-pager --grep "mega"
Jan 20 08:25:48 cloudy kernel: efi: EFI v2.7 by American Megatrends
Jan 20 08:25:48 cloudy kernel: megasas: 07.727.03.00-rc1
Jan 20 08:25:48 cloudy kernel: megaraid_sas 0000:01:00.0: BAR:0x1 BAR's base_addr(phys):0x0000000091300000 mapped virt_addr:0x0000000006165283
Jan 20 08:25:48 cloudy kernel: megaraid_sas 0000:01:00.0: FW now in Ready state
Jan 20 08:25:48 cloudy kernel: megaraid_sas 0000:01:00.0: 63 bit DMA mask and 32 bit consistent mask
Jan 20 08:25:48 cloudy kernel: megaraid_sas 0000:01:00.0: firmware supports msix : (96)
Jan 20 08:25:48 cloudy kernel: megaraid_sas 0000:01:00.0: requested/available msix 5/5 poll_queue 0
Jan 20 08:25:48 cloudy kernel: megaraid_sas 0000:01:00.0: current msix/online cpus : (5/4)
Jan 20 08:25:48 cloudy kernel: megaraid_sas 0000:01:00.0: RDPQ mode : (disabled)
Jan 20 08:25:48 cloudy kernel: megaraid_sas 0000:01:00.0: Current firmware supports maximum commands: 272 LDIO threshold: 237
Jan 20 08:25:48 cloudy kernel: megaraid_sas 0000:01:00.0: Performance mode :Latency (latency index = 1)
Jan 20 08:25:48 cloudy kernel: megaraid_sas 0000:01:00.0: FW supports sync cache : Yes
Jan 20 08:25:48 cloudy kernel: megaraid_sas 0000:01:00.0: megasas_disable_intr_fusion is called outbound_intr_mask:0x40000009
Jan 20 08:25:48 cloudy kernel: megaraid_sas 0000:01:00.0: FW provided supportMaxExtLDs: 0 max_lds: 32
Jan 20 08:25:48 cloudy kernel: megaraid_sas 0000:01:00.0: controller type : iMR(0MB)
Jan 20 08:25:48 cloudy kernel: megaraid_sas 0000:01:00.0: Online Controller Reset(OCR) : Enabled
Jan 20 08:25:48 cloudy kernel: megaraid_sas 0000:01:00.0: Secure JBOD support : Yes
Jan 20 08:25:48 cloudy kernel: megaraid_sas 0000:01:00.0: NVMe passthru support : No
Jan 20 08:25:48 cloudy kernel: megaraid_sas 0000:01:00.0: FW provided TM TaskAbort/Reset timeout : 0 secs/0 secs
Jan 20 08:25:48 cloudy kernel: megaraid_sas 0000:01:00.0: JBOD sequence map support : Yes
Jan 20 08:25:48 cloudy kernel: megaraid_sas 0000:01:00.0: PCI Lane Margining support : No
Jan 20 08:25:48 cloudy kernel: megaraid_sas 0000:01:00.0: megasas_get_ld_map_info DCMD timed out, RAID map is disabled
Jan 20 08:25:48 cloudy kernel: megaraid_sas 0000:01:00.0: megasas_enable_intr_fusion is called outbound_intr_mask:0x40000000
Jan 20 08:25:48 cloudy kernel: megaraid_sas 0000:01:00.0: INIT adapter done
Jan 20 08:25:51 cloudy kernel: megasas_issue_blocked_cmd+0x1fb/0x240 [megaraid_sas]
Jan 20 08:25:51 cloudy kernel: megasas_sync_pd_seq_num+0x1b5/0x250 [megaraid_sas]
Jan 20 08:25:51 cloudy kernel: megasas_setup_jbod_map+0x70/0x1d0 [megaraid_sas]
Jan 20 08:25:51 cloudy kernel: megasas_init_fw+0x9b5/0x12e0 [megaraid_sas]
Jan 20 08:25:51 cloudy kernel: megasas_probe_one+0x196/0x5b0 [megaraid_sas]
Jan 20 08:25:51 cloudy kernel: megasas_init+0xd9/0xff0 [megaraid_sas]
Jan 20 08:25:51 cloudy kernel: ? __pfx_megasas_init+0x10/0x10 [megaraid_sas]
Jan 20 08:26:04 cloudy kernel: megaraid_sas 0000:01:00.0: DCMD(opcode: 0x200e102) is timed out, func:megasas_issue_blocked_cmd
Jan 20 08:26:04 cloudy kernel: megaraid_sas 0000:01:00.0: megasas_sync_pd_seq_num DCMD timed out, continue without JBOD sequence map
Jan 20 08:29:04 cloudy kernel: megaraid_sas 0000:01:00.0: DCMD(opcode: 0x2010100) is timed out, func:megasas_issue_blocked_cmd
Jan 20 08:29:04 cloudy kernel: megaraid_sas 0000:01:00.0: Ignore DCMD timeout: megasas_get_pd_list 4694
Jan 20 08:32:00 cloudy kernel: megasas_issue_blocked_cmd+0x1fb/0x240 [megaraid_sas]
Jan 20 08:32:00 cloudy kernel: megasas_ld_list_query.constprop.0+0x26f/0x420 [megaraid_sas]
Jan 20 08:32:00 cloudy kernel: megasas_init_fw+0xcf1/0x12e0 [megaraid_sas]
Jan 20 08:32:00 cloudy kernel: megasas_probe_one+0x196/0x5b0 [megaraid_sas]
Jan 20 08:32:00 cloudy kernel: megasas_init+0xd9/0xff0 [megaraid_sas]
Jan 20 08:32:00 cloudy kernel: ? __pfx_megasas_init+0x10/0x10 [megaraid_sas]
Jan 20 08:32:04 cloudy kernel: megaraid_sas 0000:01:00.0: DCMD(opcode: 0x3010100) is timed out, func:megasas_issue_blocked_cmd
Jan 20 08:32:04 cloudy kernel: megaraid_sas 0000:01:00.0: Ignore DCMD timeout: megasas_ld_list_query 4940
Jan 20 08:32:04 cloudy kernel: megaraid_sas 0000:01:00.0: failed to get LD list
Jan 20 08:32:04 cloudy kernel: megaraid_sas 0000:01:00.0: megasas_init_fw: megasas_get_device_list failed
Jan 20 08:32:04 cloudy kernel: megaraid_sas 0000:01:00.0: megasas_disable_intr_fusion is called outbound_intr_mask:0x40000009
Jan 20 08:32:04 cloudy kernel: megaraid_sas 0000:01:00.0: Failed from megasas_init_fw 6539
storcli64 show all
noktoo@cloudy:/dev$ sudo /opt/MegaRAID/storcli/storcli64 show all
Status Code = 0
Status = Success
Description = None
Number of Controllers = 0
Host Name = cloudy
Operating System = Linux6.8.0-51-generic
sudo dmesg | grep -i megaraid
noktoo@cloudy:~$ sudo dmesg | grep -i megaraid
[ 0.937412] megaraid_sas 0000:01:00.0: BAR:0x1 BAR's base_addr(phys):0x0000000091300000 mapped virt_addr:0x0000000006165283
[ 0.937430] megaraid_sas 0000:01:00.0: FW now in Ready state
[ 0.937694] megaraid_sas 0000:01:00.0: 63 bit DMA mask and 32 bit consistent mask
[ 0.938058] megaraid_sas 0000:01:00.0: firmware supports msix : (96)
[ 0.938477] megaraid_sas 0000:01:00.0: requested/available msix 5/5 poll_queue 0
[ 0.938680] megaraid_sas 0000:01:00.0: current msix/online cpus : (5/4)
[ 0.938872] megaraid_sas 0000:01:00.0: RDPQ mode : (disabled)
[ 0.939069] megaraid_sas 0000:01:00.0: Current firmware supports maximum commands: 272 LDIO threshold: 237
[ 0.939890] megaraid_sas 0000:01:00.0: Performance mode :Latency (latency index = 1)
[ 0.940094] megaraid_sas 0000:01:00.0: FW supports sync cache : Yes
[ 0.940294] megaraid_sas 0000:01:00.0: megasas_disable_intr_fusion is called outbound_intr_mask:0x40000009
[ 1.316979] megaraid_sas 0000:01:00.0: FW provided supportMaxExtLDs: 0 max_lds: 32
[ 1.317257] megaraid_sas 0000:01:00.0: controller type : iMR(0MB)
[ 1.317513] megaraid_sas 0000:01:00.0: Online Controller Reset(OCR) : Enabled
[ 1.317759] megaraid_sas 0000:01:00.0: Secure JBOD support : Yes
[ 1.318002] megaraid_sas 0000:01:00.0: NVMe passthru support : No
[ 1.318269] megaraid_sas 0000:01:00.0: FW provided TM TaskAbort/Reset timeout : 0 secs/0 secs
[ 1.318502] megaraid_sas 0000:01:00.0: JBOD sequence map support : Yes
[ 1.318728] megaraid_sas 0000:01:00.0: PCI Lane Margining support : No
[ 78.342227] megaraid_sas 0000:01:00.0: megasas_get_ld_map_info DCMD timed out, RAID map is disabled
[ 78.344043] megaraid_sas 0000:01:00.0: megasas_enable_intr_fusion is called outbound_intr_mask:0x40000000
[ 78.345631] megaraid_sas 0000:01:00.0: INIT adapter done
[ 247.013350] megasas_issue_blocked_cmd+0x1fb/0x240 [megaraid_sas]
[ 247.013364] megasas_sync_pd_seq_num+0x1b5/0x250 [megaraid_sas]
[ 247.013373] megasas_setup_jbod_map+0x70/0x1d0 [megaraid_sas]
[ 247.013380] megasas_init_fw+0x9b5/0x12e0 [megaraid_sas]
[ 247.013386] megasas_probe_one+0x196/0x5b0 [megaraid_sas]
[ 247.013426] megasas_init+0xd9/0xff0 [megaraid_sas]
[ 247.013432] ? __pfx_megasas_init+0x10/0x10 [megaraid_sas]
[ 259.301248] megaraid_sas 0000:01:00.0: DCMD(opcode: 0x200e102) is timed out, func:megasas_issue_blocked_cmd
[ 259.301339] megaraid_sas 0000:01:00.0: megasas_sync_pd_seq_num DCMD timed out, continue without JBOD sequence map
[ 439.325998] megaraid_sas 0000:01:00.0: DCMD(opcode: 0x2010100) is timed out, func:megasas_issue_blocked_cmd
[ 439.326088] megaraid_sas 0000:01:00.0: Ignore DCMD timeout: megasas_get_pd_list 4694
[ 615.452803] megasas_issue_blocked_cmd+0x1fb/0x240 [megaraid_sas]
[ 615.452863] megasas_ld_list_query.constprop.0+0x26f/0x420 [megaraid_sas]
[ 615.452900] megasas_init_fw+0xcf1/0x12e0 [megaraid_sas]
[ 615.452936] megasas_probe_one+0x196/0x5b0 [megaraid_sas]
[ 615.453128] megasas_init+0xd9/0xff0 [megaraid_sas]
[ 615.453161] ? __pfx_megasas_init+0x10/0x10 [megaraid_sas]
[ 619.548486] megaraid_sas 0000:01:00.0: DCMD(opcode: 0x3010100) is timed out, func:megasas_issue_blocked_cmd
[ 619.548576] megaraid_sas 0000:01:00.0: Ignore DCMD timeout: megasas_ld_list_query 4940
[ 619.548586] megaraid_sas 0000:01:00.0: failed to get LD list
[ 619.548623] megaraid_sas 0000:01:00.0: megasas_init_fw: megasas_get_device_list failed
[ 619.548672] megaraid_sas 0000:01:00.0: megasas_disable_intr_fusion is called outbound_intr_mask:0x40000009
[ 619.642929] megaraid_sas 0000:01:00.0: Failed from megasas_init_fw 6539
EDIT:
Окей, я смог вернуть мой Raid и хранилище, но я не могу смонтировать его на /var
Чтобы решить мою предыдущую проблему, я использовал: https://forum.proxmox.com/threads/megaraid-9540-8i-virtual-drive-not-found.143223/
noktoo@cloudy:/dev$ sudo lsblk -o NAME,FSTYPE,SIZE,MOUNTPOINT,LABEL
NAME FSTYPE SIZE MOUNTPOIN LABEL
sda ext4 29.1T
nvme0n1 953.9G
├─nvme0n1p1 vfat 512M /boot/efi
├─nvme0n1p2 ext4 1G /boot
└─nvme0n1p3 LVM2_member 952.4G
└─ubuntu--vg-ubuntu--lv ext4 200G /
Jan 20 12:51:09 cloudy mount[1506]: mount: /var: mount(2) system call failed: Structure needs cleaning.
cat /etc/fstab
# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point> <type> <options> <dump> <pass>
# / was on /dev/ubuntu-vg/ubuntu-lv during curtin installation
/dev/disk/by-id/dm-uuid-LVM-ndc4DSro9LNGOjcMdB215KuiJN1PoZ5405PyBtjfOcA9l00xeV9ckFLO9qwNJuhb / ext4 defaults 0 0
# /boot was on /dev/nvme0n1p2 during curtin installation
/dev/disk/by-uuid/24e79eee-4019-44a8-989d-5017034cbe89 /boot ext4 defaults 0 0
# /boot/efi was on /dev/nvme0n1p1 during curtin installation
/dev/disk/by-uuid/A2F9-4438 /boot/efi vfat defaults 0 0
/swap.img none swap sw 0 0
UUID=a624e13a-643b-4000-bbf1-4cfcb86b7946 /var ext4 defaults 0 0
sudo fdisk -l теперь
Disk /dev/nvme0n1: 953.87 GiB, 1024209543168 bytes, 2000409264 sectors
Disk model: SAMSUNG MZVLB1T0HBLR-00000
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: F924D847-3D05-4213-95CD-4FD389414275
Device Start End Sectors Size Type
/dev/nvme0n1p1 2048 1050623 1048576 512M EFI System
/dev/nvme0n1p2 1050624 3147775 2097152 1G Linux filesystem
/dev/nvme0n1p3 3147776 2000406527 1997258752 952.4G Linux filesystem
Disk /dev/mapper/ubuntu--vg-ubuntu--lv: 200 GiB, 214748364800 bytes, 419430400 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk /dev/sda: 29.1 TiB, 32000727580672 bytes, 62501421056 sectors
Disk model: MR9341-4i
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 65536 bytes / 131072 bytes
Теперь я всё ещё не могу использовать своё хранилище
Ответ или решение
После обновления системы на Ubuntu 24.04 вы столкнулись с проблемой, когда MegaRAID не функционирует должным образом, и подключенные к нему диски (14 ТБ) не отображаются. Несмотря на то, что вы обновили прошивку MegaRAID до последней версии, проблема не была решена. Вы также упомянули, что смогли восстановить RAID и хранилище, но не можете его смонтировать в /var из-за ошибки "Structure needs cleaning". Давайте разберемся в проблеме и попробуем найти возможные решения.
Теория
MegaRAID — это технология, используемая для управления RAID-контроллерами и обеспечения надежности хранения данных. Проблемы с MegaRAID могут возникать по многим причинам, включая несовместимость драйверов, ошибки конфигурации или повреждение файловой системы. Учитывая, что вы обновили операционную систему, вполне возможно, что новая версия ядра или драйверов не совместима с вашей текущей конфигурацией RAID.
Рациональное управление RAID, безусловно, требует профессионального подхода к обновлению как драйверов, так и прошивки, поскольку это минимизирует возможность конфликтов и сбоев в работе оборудования.
Пример
Журнал показывает несколько ошибок, связанных с MegaRAID:
- DCMD timeout: Это может указывать на проблемы с взаимодействием между драйвером и аппаратным обеспечением.
- failed to get LD list: Указывает, что драйвер не смог получить список логических дисков, что может быть вызвано проблемами в прошивке или несовместимостью драйверов.
Логи свидетельствуют о том, что контроллер MegaRAID корректно инициализируется, но затем возникают тайм-ауты при попытке выполнения команд, связанных с доступом к устройствам.
Применение
-
Проверка совместимости драйверов: Убедитесь, что версия драйвера MegaRAID, установленная в системе, совместима с обновленной версией Ubuntu. Проверьте, нет ли обновленных версий драйверов для вашего RAID-контроллера, которые могли бы устранить проблему.
-
Проверка конфигурации RAID: Используйте утилиты таких как
storcli
илиmegacli
для проверки статуса конфигурации RAID. Несмотря на то, что ваш RAID отображается как установленный, могут быть ошибки в его конфигурации. -
Ремонт файловой системы: Поскольку при монтировании в /var возникает ошибка "Structure needs cleaning", вы можете попробовать восстановить файловую систему с помощью
fsck
. Узнайте, на каком устройстве хранится раздел, попытайтесь выполнить следующую команду:sudo fsck -f /dev/sda
Это должно проверить и исправить любые ошибки в структуре файловой системы.
-
Проверка аппаратной части: Оцените физическое состояние RAID-контроллера. Нестабильная работа может быть связана с аппаратными сбоями, такими как неисправные кабели или ухудшение контактных соединений.
-
Логирование и мониторинг: Настройте расширенное логирование и отслеживание для контроля состояний контроллера и идентифицирования потенциальных проблем. Перед выполнением любой операции сделайте резервные копии всех важных данных, если состояние системы позволяет.
-
Переход на предыдущую версию прошивки или ОС: В крайних случаях, если новые драйверы или обновления операционной системы не совместимы с вашим оборудованием, возможно, стоит рассмотреть возможность отката до предыдущей версии Ubuntu или прошивки, проверив их совместимость.
Ваши усилия по восстановлению работы RAID и хранилища уже привели к частичному успеху, но завершение восстановления структуры файловой системы потребует дальнейшей работоспособности с аппаратными средствами и драйверами. Учитывая сложность задачи, может быть полезно обратиться к документации производители RAID-контроллеров или технической поддержке для получения более целевой помощи.