积极答复者
有什么命令判断本地磁盘不是NAS磁盘?

问题
答案
-
经过我的测试,interfaceType这个值不理想。
之前我通过WMIC命令可以查询到但是这个值和Diskpart命令中detail disk命令查询的不一致
C:\Windows\system32>wmic diskdrive get name,model,interfacetype
InterfaceType Model Name
SCSI VMware, VMware Virtual S SCSI Disk Device \\.\PHYSICALDRIVE0
SCSI MSFT Virtual HD SCSI Disk Device \\.\PHYSICALDRIVE1DISKPART> sel disk 1
DISKPART> detail diskMSFT Virtual HD SCSI Disk Device
磁盘 ID: {10F54241-6DF5-4363-AD5C-3DC3AC0DB310}
类型 : iSCSI
状态 : 联机
路径 : 0
目标 : 0
LUN ID : 0
位置路径 : UNAVAILABLE
当前只读状态: 否
只读: 否
启动磁盘: 否
页面文件磁盘: 否
休眠文件磁盘: 否
故障转储磁盘: 否
群集磁盘 : 否卷 ### LTR 标签 FS 类型 大小 状态 信息
---------- --- ----------- ----- ---------- ------- --------- --------
卷 3 E 新加卷 NTFS 磁盘分区 58 GB 正常查询磁盘类型中SAS接口的类型即可表明为本地磁盘,如下:
DISKPART> sel disk 0
DISKPART> detail diskVMware, VMware Virtual S SCSI Disk Device
磁盘 ID: 9B3F7A71
类型 : SAS
状态 : 联机
路径 : 0
目标 : 0
LUN ID : 0
位置路径 : PCIROOT(0)#PCI(1500)#PCI(0000)#SAS(P00T00L00)
当前只读状态: 否
只读: 否
启动磁盘: 是
页面文件磁盘: 是
休眠文件磁盘: 否
故障转储磁盘: 是
群集磁盘 : 否卷 ### LTR 标签 FS 类型 大小 状态 信息
---------- --- ----------- ----- ---------- ------- --------- --------
卷 1 系统保留 NTFS 磁盘分区 350 MB 正常
系统
卷 2 C NTFS 磁盘分区 47 GB 正常 启以下是您提供Powershell查询结果
PSComputerName : SPHYXTDB125080
ConfigManagerErrorCode : 0
LastErrorCode :
NeedsCleaning :
Status : OK
DeviceID : \\.\PHYSICALDRIVE0
StatusInfo :
Partitions : 2
BytesPerSector : 512
ConfigManagerUserConfig : False
DefaultBlockSize :
Index : 0
InstallDate :
InterfaceType : SCSI
MaxBlockSize :
MaxMediaSize :
MinBlockSize :
NumberOfMediaSupported :
SectorsPerTrack : 63
Size : 51539604480
TotalCylinders : 6266
TotalHeads : 255
TotalSectors : 100663290
TotalTracks : 1597830
TracksPerCylinder : 255
__GENUS : 2
__CLASS : Win32_DiskDrive
__SUPERCLASS : CIM_DiskDrive
__DYNASTY : CIM_ManagedSystemElement
__RELPATH : Win32_DiskDrive.DeviceID="\\\\.\\PHYSICALDRIVE0"
__PROPERTY_COUNT : 51
__DERIVATION : {CIM_DiskDrive, CIM_MediaAccessDevice, CIM_LogicalDevic
__SERVER : SPHYXTDB125080
__NAMESPACE : root\cimv2
__PATH : \\SPHYXTDB125080\root\cimv2:Win32_DiskDrive.DeviceID="\
Availability :
Capabilities : {3, 4}
CapabilityDescriptions : {Random Access, Supports Writing}
Caption : VMware, VMware Virtual S SCSI Disk Device
CompressionMethod :
CreationClassName : Win32_DiskDrive
Description : 磁盘驱动器
ErrorCleared :
ErrorDescription :
ErrorMethodology :
FirmwareRevision : 1.0
Manufacturer : (标准磁盘驱动器)
MediaLoaded : True
MediaType : Fixed hard disk media
Model : VMware, VMware Virtual S SCSI Disk Device
Name : \\.\PHYSICALDRIVE0
PNPDeviceID : SCSI\DISK&VEN_VMWARE_&PROD_VMWARE_VIRTUAL_S\5&22BE343F&
PowerManagementCapabilities :
PowerManagementSupported :
SCSIBus : 0
SCSILogicalUnit : 0
SCSIPort : 3
SCSITargetId : 0
SerialNumber :
Signature : 2604628593
SystemCreationClassName : Win32_ComputerSystem
SystemName : SPHYXTDB125080
Scope : System.Management.ManagementScope
Path : \\SPHYXTDB125080\root\cimv2:Win32_DiskDrive.DeviceID="\
Options : System.Management.ObjectGetOptions
ClassPath : \\SPHYXTDB125080\root\cimv2:Win32_DiskDrive
Properties : {Availability, BytesPerSector, Capabilities, Capability
SystemProperties : {__GENUS, __CLASS, __SUPERCLASS, __DYNASTY...}
Qualifiers : {dynamic, Locale, provider, UUID}
Site :
Container :
谷青松
全部回复
-
您好!
感谢您的提问。
您可以尝试以下Power shell命令,
#查看本地磁盘驱动器 Get-WmiObject -Class Win32_logicaldisk -Filter "DriveType = '3'" #查看网络挂载磁盘驱动器 Get-WmiObject -Class Win32_logicaldisk -Filter "DriveType = '4'"
具体信息您可以参照以下这个博客,
https://mcpmag.com/articles/2018/01/26/view-drive-information-with-powershell.aspx
请注意:由于该网站不是由微软托管,链接可能会改变,不另行通知。 Microsoft不保证此信息的准确性。
希望以上信息可以帮助到您。
如需要进一步,可以随时在论坛回复。
Best regards,
Michael
Please remember to mark the replies as an answers if they help.
If you have feedback for TechNet Subscriber Support, contact tnmff@microsoft.com -
你好,依据我的测试结果
Get-WmiObject -Class Win32_logicaldisk -Filter "DriveType = '4'"
只能查询到网络映射驱动器挂载的磁盘,不能查询到NAS挂载盘。
另外我测试结果发现貌似只有diskpart命令才中Detail disk才能盘为NAS盘 ,查询磁盘类型中iSCSI接口的类型表明此磁如下:
DISKPART> sel disk 1
DISKPART> detail diskMSFT Virtual HD SCSI Disk Device
磁盘 ID: {10F54241-6DF5-4363-AD5C-3DC3AC0DB310}
类型 : iSCSI
状态 : 联机
路径 : 0
目标 : 0
LUN ID : 0
位置路径 : UNAVAILABLE
当前只读状态: 否
只读: 否
启动磁盘: 否
页面文件磁盘: 否
休眠文件磁盘: 否
故障转储磁盘: 否
群集磁盘 : 否卷 ### LTR 标签 FS 类型 大小 状态 信息
---------- --- ----------- ----- ---------- ------- --------- --------
卷 3 E 新加卷 NTFS 磁盘分区 58 GB 正常查询磁盘类型中SAS接口的类型即可表明为本地磁盘,如下:
DISKPART> sel disk 0
DISKPART> detail diskVMware, VMware Virtual S SCSI Disk Device
磁盘 ID: 9B3F7A71
类型 : SAS
状态 : 联机
路径 : 0
目标 : 0
LUN ID : 0
位置路径 : PCIROOT(0)#PCI(1500)#PCI(0000)#SAS(P00T00L00)
当前只读状态: 否
只读: 否
启动磁盘: 是
页面文件磁盘: 是
休眠文件磁盘: 否
故障转储磁盘: 是
群集磁盘 : 否卷 ### LTR 标签 FS 类型 大小 状态 信息
---------- --- ----------- ----- ---------- ------- --------- --------
卷 1 系统保留 NTFS 磁盘分区 350 MB 正常
系统
卷 2 C NTFS 磁盘分区 47 GB 正常 启我现在是希望您这边提供一个简单的命令可以查询判断是否是NAS挂载,使用Diskpart命令步骤过多繁琐,所以希望你能够帮忙找到一个好一些的命令。
另外能否告知Win32_logicaldisk中DriveType值1~5的含义,目前我了解到
3表示本地磁盘
4表示网络映射磁盘
5表示光盘
其他1和2分别表示啥?请告诉我,谢谢!
谷青松
- 已编辑 谷青松 2019年6月4日 7:41 编辑文字补充
-
您好!
感谢您的详细回复。
关于DriveType值的含义,1表示不是根目录磁盘,2表示可移动磁盘,您可以参照以下链接:
https://mcpmag.com/articles/2018/01/26/view-drive-information-with-powershell.aspx
另外,您可以参照此链接中的另一条命令,可以看到interface接口类型来判断是否为NAS磁盘,
$DiskPartition.GetRelationships() | Select-Object -Property __RELPATH $DiskDrive = $DiskPartition.getrelated('Win32_DiskDrive') $DiskDrive $DiskDrive | Select-Object -Property *
希望以上信息可以帮助到您。
如果还需要进一步的帮助,可以随时在论坛回复。
Best regards,
Michael
Please remember to mark the replies as an answers if they help.
If you have feedback for TechNet Subscriber Support, contact tnmff@microsoft.com- 已建议为答案 Michael HxyMicrosoft contingent staff, Moderator 2019年6月10日 7:27
- 已标记为答案 谷青松 2019年6月11日 2:40
- 取消答案标记 谷青松 2019年6月11日 6:33
-
请问回复的信息对你有用么?
如果觉得答复有帮助,欢迎标记为答案。
如果你需要进一步的帮助,请告诉我们。
Best Regards,
Michael
Please remember to mark the replies as an answers if they help.
If you have feedback for TechNet Subscriber Support, contact tnmff@microsoft.com- 已编辑 Michael HxyMicrosoft contingent staff, Moderator 2019年6月10日 7:29
-
执行
$DiskPartition.GetRelationships() | Select-Object -Property __RELPATH
$DiskDrive = $DiskPartition.getrelated('Win32_DiskDrive')
无法执行,错误代码:
不能对 Null 值表达式调用方法。
所在位置 行:1 字符: 1
+ $DiskPartition.GetRelationships() | Select-Object -Property __RELPATH
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: (:) [],RuntimeException
+ FullyQualifiedErrorId : InvokeMethodOnNull
不能对 Null 值表达式调用方法。
所在位置 行:1 字符: 1
+ $DiskDrive =$DiskPartition.getrelated('Win32_DiskDrive')
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: (:) [],RuntimeException
+ FullyQualifiedErrorId : InvokeMethodOnNull请指教
谷青松
-
您好!
不好意思,之前的脚本我在传达的时候可能有些问题。咱们需要先将几个参数的取值跑出,才能得出最终的结果。
我重新写下命令,您可以再参照下下面截图。
$Disk = Get-WmiObject -Class Win32_logicaldisk -Filter "DeviceID = 'C:'" $DiskPartition = $Disk.GetRelated('Win32_DiskPartition') $DiskDrive = $DiskPartition.getrelated('Win32_DiskDrive') $DiskPartition | Select-Object -Property * $DiskDrive | Select-Object -Property *
以上命令您可以一条条跑,前面三个代表值得出之后,后面两条可以跑出咱们的结果。详细参照下图,
希望以上信息可以帮助到您。
如果还需要进一步的回复,可以随时在论坛回复。
Best regards,
Michael
Please remember to mark the replies as an answers if they help.
If you have feedback for TechNet Subscriber Support, contact tnmff@microsoft.com -
经过我的测试,interfaceType这个值不理想。
之前我通过WMIC命令可以查询到但是这个值和Diskpart命令中detail disk命令查询的不一致
C:\Windows\system32>wmic diskdrive get name,model,interfacetype
InterfaceType Model Name
SCSI VMware, VMware Virtual S SCSI Disk Device \\.\PHYSICALDRIVE0
SCSI MSFT Virtual HD SCSI Disk Device \\.\PHYSICALDRIVE1DISKPART> sel disk 1
DISKPART> detail diskMSFT Virtual HD SCSI Disk Device
磁盘 ID: {10F54241-6DF5-4363-AD5C-3DC3AC0DB310}
类型 : iSCSI
状态 : 联机
路径 : 0
目标 : 0
LUN ID : 0
位置路径 : UNAVAILABLE
当前只读状态: 否
只读: 否
启动磁盘: 否
页面文件磁盘: 否
休眠文件磁盘: 否
故障转储磁盘: 否
群集磁盘 : 否卷 ### LTR 标签 FS 类型 大小 状态 信息
---------- --- ----------- ----- ---------- ------- --------- --------
卷 3 E 新加卷 NTFS 磁盘分区 58 GB 正常查询磁盘类型中SAS接口的类型即可表明为本地磁盘,如下:
DISKPART> sel disk 0
DISKPART> detail diskVMware, VMware Virtual S SCSI Disk Device
磁盘 ID: 9B3F7A71
类型 : SAS
状态 : 联机
路径 : 0
目标 : 0
LUN ID : 0
位置路径 : PCIROOT(0)#PCI(1500)#PCI(0000)#SAS(P00T00L00)
当前只读状态: 否
只读: 否
启动磁盘: 是
页面文件磁盘: 是
休眠文件磁盘: 否
故障转储磁盘: 是
群集磁盘 : 否卷 ### LTR 标签 FS 类型 大小 状态 信息
---------- --- ----------- ----- ---------- ------- --------- --------
卷 1 系统保留 NTFS 磁盘分区 350 MB 正常
系统
卷 2 C NTFS 磁盘分区 47 GB 正常 启以下是您提供Powershell查询结果
PSComputerName : SPHYXTDB125080
ConfigManagerErrorCode : 0
LastErrorCode :
NeedsCleaning :
Status : OK
DeviceID : \\.\PHYSICALDRIVE0
StatusInfo :
Partitions : 2
BytesPerSector : 512
ConfigManagerUserConfig : False
DefaultBlockSize :
Index : 0
InstallDate :
InterfaceType : SCSI
MaxBlockSize :
MaxMediaSize :
MinBlockSize :
NumberOfMediaSupported :
SectorsPerTrack : 63
Size : 51539604480
TotalCylinders : 6266
TotalHeads : 255
TotalSectors : 100663290
TotalTracks : 1597830
TracksPerCylinder : 255
__GENUS : 2
__CLASS : Win32_DiskDrive
__SUPERCLASS : CIM_DiskDrive
__DYNASTY : CIM_ManagedSystemElement
__RELPATH : Win32_DiskDrive.DeviceID="\\\\.\\PHYSICALDRIVE0"
__PROPERTY_COUNT : 51
__DERIVATION : {CIM_DiskDrive, CIM_MediaAccessDevice, CIM_LogicalDevic
__SERVER : SPHYXTDB125080
__NAMESPACE : root\cimv2
__PATH : \\SPHYXTDB125080\root\cimv2:Win32_DiskDrive.DeviceID="\
Availability :
Capabilities : {3, 4}
CapabilityDescriptions : {Random Access, Supports Writing}
Caption : VMware, VMware Virtual S SCSI Disk Device
CompressionMethod :
CreationClassName : Win32_DiskDrive
Description : 磁盘驱动器
ErrorCleared :
ErrorDescription :
ErrorMethodology :
FirmwareRevision : 1.0
Manufacturer : (标准磁盘驱动器)
MediaLoaded : True
MediaType : Fixed hard disk media
Model : VMware, VMware Virtual S SCSI Disk Device
Name : \\.\PHYSICALDRIVE0
PNPDeviceID : SCSI\DISK&VEN_VMWARE_&PROD_VMWARE_VIRTUAL_S\5&22BE343F&
PowerManagementCapabilities :
PowerManagementSupported :
SCSIBus : 0
SCSILogicalUnit : 0
SCSIPort : 3
SCSITargetId : 0
SerialNumber :
Signature : 2604628593
SystemCreationClassName : Win32_ComputerSystem
SystemName : SPHYXTDB125080
Scope : System.Management.ManagementScope
Path : \\SPHYXTDB125080\root\cimv2:Win32_DiskDrive.DeviceID="\
Options : System.Management.ObjectGetOptions
ClassPath : \\SPHYXTDB125080\root\cimv2:Win32_DiskDrive
Properties : {Availability, BytesPerSector, Capabilities, Capability
SystemProperties : {__GENUS, __CLASS, __SUPERCLASS, __DYNASTY...}
Qualifiers : {dynamic, Locale, provider, UUID}
Site :
Container :
谷青松
-
好的,暂时还是建议您使用diskpart命令来显示NAS磁盘及其他磁盘接口类型。
感谢您的分享。
祝工作愉快!
Best regards,
Michael
Please remember to mark the replies as an answers if they help.
If you have feedback for TechNet Subscriber Support, contact tnmff@microsoft.com