我在我的家庭 Linux 服务器上使用 Marvell 88SE9230 控制器。惠普确实有实用程序来设置突袭并获取一些统计数据。但我想知道如何从 Linux 系统获取任何状态。快速谷歌搜索仅显示用于在早期版本的内核上访问阵列本身的 Linux 驱动程序,但我想知道驱动器的 SMART 状态。
Smartctl 不起作用:
root@iris:~# smartctl -a -d marvell -T verypermissive /dev/sda
smartctl 7.1 2019-12-30 r5022 [x86_64-linux-5.4.0-96-generic] (local build)
Copyright (C) 2002-19, Bruce Allen, Christian Franke, www.smartmontools.org
Read Device Identity failed: Unknown error
=== START OF INFORMATION SECTION ===
Device Model: [No Information Found]
Serial Number: [No Information Found]
Firmware Version: [No Information Found]
Device is: Not in smartctl database [for details use: -P showall]
ATA Version is: [No Information Found]
Local Time is: Thu Jan 27 19:11:54 2022 MSK
SMART support is: Ambiguous - ATA IDENTIFY DEVICE words 82-83 don't show if SMART supported.
SMART support is: Ambiguous - ATA IDENTIFY DEVICE words 85-87 don't show if SMART is enabled.
Checking to be sure by trying SMART RETURN STATUS command.
SMART support is: Unknown - Try option -s with argument 'on' to enable it.
Read SMART Data failed: Success
=== START OF READ SMART DATA SECTION ===
SMART Status command failed: Success
SMART overall-health self-assessment test result: UNKNOWN!
SMART Status, Attributes and Thresholds cannot be read.
Read SMART Error Log failed: Success
Read SMART Self-test Log failed: Success
Selective Self-tests/Logging not supported
我怎样才能从控制器获得至少一些统计数据?
答案1
可以确认,这里同样缺乏支持(当尝试通过 Marvel 芯片组从设备获取智能统计数据时,输出与 OP 完全相同)。
:00.0 SATA controller: Marvell Technology Group Ltd. 88SE9230 PCIe SATA 6Gb/s Controller (rev 11)
Linux fermmy 5.13.0-39-generic #44~20.04.1-Ubuntu SMP Thu Mar 24 16:43:35 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux
*-sata
description: SATA controller
product: 88SE9230 PCIe SATA 6Gb/s Controller
vendor: Marvell Technology Group Ltd.
physical id: 0
bus info: pci@0000:07:00.0
version: 11
width: 32 bits
clock: 33MHz
capabilities: sata pm msi pciexpress ahci_1.0 bus_master cap_list rom
configuration: driver=ahci latency=0
resources: irq:43 ioport:d050(size=8) ioport:d040(size=4) ioport:d030(size=8) ioport:d020(size=4) ioport:d000(size=32) memory:fc710000-fc7107ff memory:fc700000-fc70ffff
据我所知,Marvell 没有直接提供可行的选择;https://www.marvell.com/support/downloads.html
-- 但看这里!
https://support.lenovo.com/ca/en/downloads/ds539334-marvell-storage-utility-for-linux-for-linux
理论上...这应该可行,对吧?我们试试吧。
我使用的是 Ubuntu,并且不想在 CentOS 衍生版上进行这项工作;幸运的是,有人已经完成了所有繁重的工作:信用:https://github.com/stegm/marvell_msu_docker
一些小事情已经过时,我在这个分支中修复/改进了: https://github.com/fermulator/marvell_msu_docker
按照 README 说明进行操作:) - 然后我们可以看到:
~/projects/marvell_msu_docker$ docker-compose run --rm msu cli
SG driver version 3.5.36.
CLI Version: 4.1.10.42 RaidAPI Version: 2.3.10.1088
Welcome to RAID Command Line Interface.
> info -o vd
Virtual Disk Information
-------------------------
id: 0
name: RAID1_SSD
status: functional
Stripe size: 64
RAID mode: RAID1
Cache mode: Not Support
size: 488306 M
BGA status: not running
Block ids: 4 0
# of PDs: 2
PD RAID setup: 3 2
Running OS: no
Total # of VD: 1
奖励:甚至 Web UI 也能正常工作!