![SCSI:SAN 还是本地磁盘?](https://linux22.com/image/153597/SCSI%EF%BC%9ASAN%20%E8%BF%98%E6%98%AF%E6%9C%AC%E5%9C%B0%E7%A3%81%E7%9B%98%EF%BC%9F.png)
我正在运行 Debian 9。它连接了 SSD 以及连接到 SAN 存储的光纤通道链路。
据我所知,两者都作为 /dev/sdX 设备可见。
如何知道什么是磁盘、什么是存储?
系统中的存储配置在哪里?
答案1
更方便的方法是使用LSSCSI公用事业。
从文档关于FC:
对于 FC 设备(逻辑单元),“--transport”选项将显示端口名称和端口标识符,而不是 SCSI INQUIRY“字符串”。例如:
$ lsscsi -g
[3:0:0:0] enclosu HP A6255A HP04 - /dev/sg3
[3:0:1:0] disk HP 36.4G ST336753FC HP00 /dev/sdd /dev/sg4
[3:0:2:0] disk HP 36.4G ST336753FC HP00 /dev/sde /dev/sg5
$ lsscsi -g --transport
[3:0:0:0] enclosu fc:0x50060b00002e48a3,0x0b109b - /dev/sg3
[3:0:1:0] disk fc:0x21000004cf97de68,0x0b109f /dev/sdd /dev/sg4
[3:0:2:0] disk fc:0x21000004cf97e385,0x0b10a3 /dev/sde /dev/sg5
lsscsi
用途系统文件系统(从介绍文档部分):
lsscsi 命令扫描 2.6 Linux 内核系列中引入的 sysfs 伪文件系统。由于大多数用户有权读取 sysfs(通常安装在 /sys ),因此可以在部分或所有 SCSI 设备上找到元信息,而无需用户提升权限来访问特殊文件(例如 /dev/sda )。 lsscsi 命令还可以显示设备的主节点名称、其 SCSI 通用 (sg) 节点名称及其内核名称之间的关系。
答案2
您可以尝试以下操作:检查此设备的主要和次要编号:
# ls -l /dev/sd*
brw-rw---- 1 root disk 8, 0 May 15 12:58 /dev/sda
然后进入目录
/sys/dev/block/8:0/device
其中 8:0 代表上面的主次编号并获取文件内容model
# cat model
VBOX HARDDISK
PS 这是针对 RHEL 的,在 Debian 上,路径可能应该是/sys/dev/8:0/device
答案3
在 Debian 9 或类似的相当现代的发行版上,您可以使用lsblk
如下命令:
lsblk -o +HCTL,TRAN,WWN
TRAN 字段将标识所使用的传输方法,但可能为空。但 HCTL 四元组的第一个数字将指示提供对该设备的访问的主机适配器的编号:如果/sys/class/fc_host/host<N>
存在相应的目录,则该存储设备肯定是光纤通道 SAN LUN。
您将在目录中找到光纤通道适配器的 WWN 信息/sys/class/fc_host/host<N>
。由于历史原因,Emulex FibreChannel 主机适配器驱动程序 ( lpfc.ko
) 在 中提供了许多运行时可配置设置/sys/class/scsi_host/host<N>
。其他供应商的 FC 驱动程序可能会以不同的方式显示它们。