You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Windows Server 2016中Get-Device等效PowerShell命令及磁盘插槽查询

在Windows Server 2016中替代Get-Device的PowerShell方案

嘿,针对你的问题,Windows Server 2016里并没有和Get-Device完全等效的原生PowerShell命令(这个命令是在Windows 10/Windows Server 2019及以后才引入的),不过我们可以用几个现成的PowerShell cmdlet和WMI/CIM类来实现你要的所有功能——不管是列出主板插槽及占用设备,还是排查所有连接的磁盘,都能轻松搞定。

一、列出主板插槽及对应占用设备

要获取主板上的PCIe插槽信息以及每个插槽的设备占用情况,我们可以借助Win32_PCIeSlot这个CIM类,搭配Win32_PnPEntity来关联设备名称:

基础插槽信息查询

先执行这条命令查看所有PCIe插槽的基本状态:

Get-CimInstance Win32_PCIeSlot | Select-Object Name, SlotType, CurrentDevice

输出里的CurrentDevice字段如果有值,代表该插槽已被设备占用,值是设备的ID;如果为空则说明插槽未使用。

关联设备名称的完整脚本

如果想要直接看到插槽对应的设备名称,可以用这个循环脚本:

$slots = Get-CimInstance Win32_PCIeSlot
foreach ($slot in $slots) {
    if ($slot.CurrentDevice) {
        $device = Get-CimInstance Win32_PnPEntity -Filter "DeviceID='$($slot.CurrentDevice)'"
        [PSCustomObject]@{
            插槽名称 = $slot.Name
            插槽类型 = $slot.SlotType
            设备名称 = $device.Name
            设备ID = $slot.CurrentDevice
        }
    } else {
        [PSCustomObject]@{
            插槽名称 = $slot.Name
            插槽类型 = $slot.SlotType
            设备名称 = "未占用"
            设备ID = $null
        }
    }
}

执行后会输出结构化的表格,清晰展示每个插槽的使用状态和对应设备。

二、排查所有已连接的磁盘(含直连、PCIe等)

Windows Server 2016原生提供了几个专门针对磁盘的cmdlet,完全可以覆盖你要的需求:

1. 快速查看所有磁盘基本信息

Get-Disk是最常用的命令,它能列出系统中所有磁盘(包括本地SATA、NVMe、SAS RAID卡挂载的磁盘、USB磁盘等),并且通过BusType字段可以区分连接类型:

Get-Disk | Select-Object Number, FriendlyName, BusType, Size

输出示例里的BusType会显示SATA、NVMe、SAS、USB等类型,轻松识别磁盘是直连还是通过PCIe插槽连接的(比如NVMe磁盘就是通过PCIe的)。

2. 关联磁盘与PCIe插槽信息

如果想要把磁盘和对应的PCIe插槽信息绑定,可以结合Get-PnpDevice命令,以NVMe磁盘为例:

Get-Disk | Where-Object BusType -eq 'NVMe' | ForEach-Object {
    $pnpDevice = Get-PnpDevice -InstanceId $($_.DevicePath)
    [PSCustomObject]@{
        磁盘编号 = $_.Number
        磁盘名称 = $_.FriendlyName
        连接类型 = $_.BusType
        设备名称 = $pnpDevice.FriendlyName
        插槽位置 = $pnpDevice.LocationInfo
    }
}

这个脚本会输出NVMe磁盘对应的PCIe插槽位置等详细信息,方便你确认设备的物理连接位置。

3. RAID场景下查看物理磁盘

如果你的系统用了RAID阵列,Get-PhysicalDisk可以直接查看底层的物理磁盘信息:

Get-PhysicalDisk | Select-Object FriendlyName, MediaType, BusType, CanPool, Size

这个命令能帮你识别RAID组里的每个物理磁盘及其连接方式。

内容的提问来源于stack exchange,提问作者Nisha John

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 07:21:28