lsscsi 中的 hctl 数字是如何读取的?

lsscsi 中的 hctl 数字是如何读取的?

进行lsscsi时:

$lsscsi

[0:0:2:0] disk FUJITSU MAM3184MP 0105 /dev/sda
[1:0:0:0] cd   CREATIVE CD5233E 1.00 /dev/scd0

以我的理解:

H : SCSI 主机 ID

C:SCSI通道

T : 目标数

L:LUN

这4个数是怎么来的?它从 BIOS 读取吗?或者它们是由操作系统决定的?

还有其他 Linux 命令也可以得到这些数字吗?

答案1

这些数字由内核(及其设备驱动程序)根据适当的硬件信息分配。因此,在真正的并行 SCSI 设置中,第二个字段将标识相应 HBA 上的总线,第三个字段将标识目标(通常由每个设备上的跳线确定),第四个字段标识目标的子集(其中由目标决定)。

所有这些都/sys/block在 Linux 下公开,因此任何命令都可以在那里查找相关信息。lsscsi在某些情况下确实有自己的术语,例如对于 NVMe 设备(主机字段中带有“N”),但使用的所有信息也可在/sys/block.

相关内容