我正在使用 FreeNAS 9.3 ,它是 FreeBSD 9.3 。这在 vmware ESXi 下。
我有 3 个磁盘,是为此 VM 配置的。
需要将一个磁盘更换为另一个磁盘(因为物理上它出现故障)。
已在虚拟机中添加新磁盘,并且 FreeNAS 已识别该磁盘,但我无法识别需要删除的磁盘(因为有多个相同大小的磁盘)。
在linux上,我能够识别 /dev/disk/by-path ,在那里我将linux上的SCSI地址(例如:0:10)与VMWare配置关联起来......
命令camcontrol devlist
, pciconf
, geom disk list
, 没有帮助。
在哪里可以获取特定磁盘的 SCSI 地址?
答案1
凸轮控制当使用 ATA 和 SCSI 磁盘时,它是适合此目的的工具。你甚至说你尝试过它 - 但没有说为什么你不能使用它。
典型的输出是:
# camcontrol devlist
at scbus1 target 0 lun 0 (ada0,pass0)
at scbus2 target 0 lun 0 (ada1,pass1)
at scbus4 target 0 lun 0 (ada2,pass2)
at scbus5 target 0 lun 0 (ada3,pass3)
之前(FreeBSD 9 之前)有一个名为 ATA 磁盘的单独工具atacontrol
- 该工具已被camcontrol
.
答案2
刚刚找到一种方法...
在 dmesg.boot 处进行 grep,
其中 scbus# 是 SCSI ID,target # 是该 ID 处的地址。
jdivm13# grep "da[0-9] at" /var/run/dmesg.boot
da0 at mpt0 bus 0 scbus2 target 0 lun 0
da1 at mpt1 bus 0 scbus3 target 1 lun 0
da2 at mpt1 bus 0 scbus3 target 2 lun 0
da3 at mpt1 bus 0 scbus3 target 3 lun 0
da4 at mpt1 bus 0 scbus3 target 4 lun 0
da5 at mpt2 bus 0 scbus4 target 1 lun 0
da6 at mpt2 bus 0 scbus4 target 2 lun 0
da7 at mpt2 bus 0 scbus4 target 3 lun 0
da8 at mpt2 bus 0 scbus4 target 4 lun 0
da9 at umass-sim0 bus 0 scbus6 target 0 lun 0