Kryptische Gerätenamen in der Windows Ereignisanzeige auflösen und dem passenden Gerät bzw. Laufwerksbuchstaben zuordnen


Häufiger kommt es vor, dass man bei Problemen in der Windows Ereignisanzeige einen Eintrag findet wie z. B.:


Bei einem Auslagerungsvorgang wurde ein Fehler festgestellt. Betroffen ist Gerät \Device\Harddisk3\DR3.

Diese perfekten, genauen Angaben! Einfach wunderbar. Wenn man nun aber mehrere Laufwerke an einem Rechner, physikalisch und virtuell hat, dann wird die Sache schnell kompliziert.

Leider gibt es nicht eine einfache Lösung mit Bordmitteln. Powershell mit WMI gibt leider zu wenig Infos her. Man benötigt ein Programm Namens WinObj von Sysinternals: http://technet.microsoft.com/en-us/sysinternals/bb896657

Damit sucht man unter dem Ordner GLOBAL?? in der Spalte SymLink den obigen Eintrag für \Device\Harddisk3\DR3 und findet in meinem Fall unter der Spalte Name den Eintrag PhysicalDrive3.

Mit Physicaldrive3 geht die Suche nun mittels Powershell weiter.

gwmi win32_diskdrive

listet alle physikalischen Laufwerke auf und

gwmi win32_diskdrive | where deviceid -eq "\\.\PHYSICALDRIVE3"

findet den gesuchten Eintrag. In meinem Fall kam dann

Partitions : 1
DeviceID   : \\.\PHYSICALDRIVE3
Model      : QNAP iSCSI Storage SCSI Disk Device
Size       : 1408743705600
Caption    : QNAP iSCSI Storage SCSI Disk Device

zu Tage. Damit wusste ich endlich, dass das Problem von einem QNAP NAS herrührte. Aber es gab mehrere QNAP NASse. Also welches wars?

Mittels

gwmi win32_diskdrivetodiskpartition | where Antecedent -match "DRIVE3"

wurde weitergefahndet, welches dieses Ergebnis brachte:

__GENUS          : 2
__CLASS          : Win32_DiskDriveToDiskPartition
__SUPERCLASS     : CIM_MediaPresent
__DYNASTY        : CIM_Dependency
__RELPATH        : Win32_DiskDriveToDiskPartition.Antecedent="\\\\VERONIKA7\\root\\cimv2:Win32_Dis
                   \\\\\.\\\\PHYSICALDRIVE3\"",Dependent="\\\\VERONIKA7\\root\\cimv2:Win32_DiskPar
                   k #3, Partition #0\""
__PROPERTY_COUNT : 2
__DERIVATION     : {CIM_MediaPresent, CIM_Dependency}
__SERVER         : VERONIKA7
__NAMESPACE      : root\cimv2
__PATH           : \\VERONIKA7\root\cimv2:Win32_DiskDriveToDiskPartition.Antecedent="\\\\VERONIKA7
                   iskDrive.DeviceID=\"\\\\\\\\.\\\\PHYSICALDRIVE3\"",Dependent="\\\\VERONIKA7\\ro
                   artition.DeviceID=\"Disk #3, Partition #0\""
Antecedent       : \\VERONIKA7\root\cimv2:Win32_DiskDrive.DeviceID="\\\\.\\PHYSICALDRIVE3"
Dependent        : \\VERONIKA7\root\cimv2:Win32_DiskPartition.DeviceID="Disk #3, Partition #0"
PSComputerName   : VERONIKA7

Nun nimmt man obiges Ergebnis und speichert es für eine weitere Abfrage

$dp = gwmi win32_diskdrivetodiskpartition | where Antecedent -match "DRIVE3"
gwmi win32_logicaldisktopartition | where Antecedent -eq $dp.Dependent | select Dependent

Mittels dieser letzten Abfrage erhält man dann

\\VERONIKA7\root\cimv2:Win32_LogicalDisk.DeviceID="S:"

Somit hat man endlich den NT Gerätenamen aus dem Eventlogeintrag in einen sinnvollen Namen zugeordnet. Übrigens war hier Laufwerk S: ein Sicherungslaufwerk, welches nur noch 200MB Platz hatte. Aber das ist eine andere Geschichte.

Hier was zu NT Gerätenamen: http://msdn.microsoft.com/en-us/library/windows/hardware/ff557722(v=vs.85).aspx und hier eine etwas bessere Beschreibung: http://support.microsoft.com/kb/235128

Dann gäbe es noch das DOSDEV.EXE welches ich früher schon mal unter https://newyear2006.wordpress.com/2006/11/25/ermitteln-des-zugehorigen-laufwerksbuchstaben-zu-geratenamen/#comment-21354 beschrieben habe. Bin mir aber nicht sicher ob dies unter 64Bit noch läuft.

Eine Antwort to “Kryptische Gerätenamen in der Windows Ereignisanzeige auflösen und dem passenden Gerät bzw. Laufwerksbuchstaben zuordnen”

  1. Quirel Says:

    Dieser Artikel handelt auch von der Namensauflösung, allerdings ist es sehr verwirrend und die Frage, ob es so aktuell noch angewendet werden kann: http://support.microsoft.com/kb/159865

Schreibe einen Kommentar

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s


%d Bloggern gefällt das: