我可以从Linux内部检测硬件RAID信息吗?

Modified on: Mon, 15 Apr 2019 18:40:03 +0800

当我在Linux内部时,我可以从lsblk中获取以下信息(从输出中删除不相关的驱动器):

NAME  MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda     8:0    0   298G  0 disk 
sdb     8:16   0   2.7T  0 disk

当我手动将驱动器拉出服务器时,我可以告诉我我正在使用以下驱动器:

0  Seagate 320GB
1  Seagate 320GB
2  Hitachi 1TB
3  Hitachi 1TB
4  Hitachi 1TB
5  Hitachi 1TB
6  [empty]
7  [empty]

由于服务器中的物理存储空间比Linux中的可用空间多,这意味着我显然使用某种形式的RAID系统。通过一些数学计算,我经常可以找出正在使用的RAID系统类型。

我有办法检测我是否在Linux 中使用来自的硬件RAID,并找出有关它的所有信息(例如RAID类型,可用驱动器)没有关闭服务器,物理拉动驱动器,并阅读他们的标签?

这些信息可以从Linux内部收集,还是硬件RAID使得底层系统对操作系统“不可见”?

最佳答案

如何获取RAID信息将完​​全取决于您使用的RAID控制器。通常,制造商将拥有可从其网站下载的工具,可用于查询RAID控制器并获取此信息。

要查找您正在使用的RAID控制器,请尝试以下命令之一:

lspci的

# lspci -knn | grep 'RAID bus controller'
08:00.0 RAID bus controller [0104]: 3ware Inc 9690SA SAS/SATA-II RAID PCIe [13c1:1005] (rev 01)

在这里,我们要查找的信息是“3ware Inc 9690SA SAS / SATA-II RAID PCIe”

使用lsscsi

该命令在Debian和Ubuntu上不可用,但快速sudo apt-get install lsscsi将从repos中获取它。请注意,如果您不使用RAID控制器,则硬盘驱动器的制造商和型号将显示在此处。

# lsscsi
[2:0:0:0]    disk    AMCC     9690SA-8I  DISK  4.08  /dev/sda 
[2:0:1:0]    disk    AMCC     9690SA-8I  DISK  4.08  /dev/sdb 

在这里,我们看到制造商是“AMCC”,并且RAID卡的型号是“9690SA-8I”快速Google搜索显示此卡也称为“AMCC 3Ware 9690SA-8I“

lshw

第三种方法(提供相当多的输出数据)是使用lshw命令。以root身份运行lshw -class disk,仅显示有关硬盘的详细信息(包括RAID信息)。

查找RAID控制器工具

现在我们有了制造商和型号,应该可以在他们的网站上找到这些工具,或者至少能够获得有关如何查找和使用该特定控制器工具的Google详细信息。

如果制造商出现在此列表中,请参阅以下答案以获取有关如何获取卡的RAID信息的更多详细信息:


相关问答

添加新评论