从iscsi启动器名称中获取iscsi映射的驱动器号



PowerShell中,我正在尝试获取ISCSI目标映射到的驱动器号。我使用以下内容来获取ISCSI启动器名称。

Get-IscsiTarget | ? {$_.IsConnected -eq $True} | Select -ExpandProperty NodeAddress

我尝试过使用Get-Disk | Select *Get-PSDrive | Select *,但这些cmdlets似乎没有任何可以链接目标以获取其驱动器号的字段。

只要每个ISCSI目标有一个活动分区(不包括保留分区),就可以使用以下方法将ISCSI地址与其对应的驱动器号相匹配。

foreach ($disk in (Get-Disk | ?{$_.BusType -Eq "iSCSI"})){
    $DriveLetter = ($disk | Get-Partition | ?{$_.Type -eq "Basic"}).DriveLetter
    $ISCSI = $disk | Get-IscsiSession
    [pscustomobject]@{
        DiskNumber=$disk.Number; 
        DriveLetter=$DriveLetter; 
        InitiatorNodeAddress=$ISCSI.InitiatorNodeAddress;
        InitiatorIP=$ISCSI.InitiatorPortalAddress;
        Size=$disk.Size;
    }  
}

这将检查所有连接的ISCSI磁盘并获取其相应的驱动器号,然后将所有信息放入客户PowerShell对象并返回。

相关内容

  • 没有找到相关文章

最新更新