Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

gelöst Zählweise unter MS Windows bei Festplatten

Mitglied: cardisch

cardisch (Level 3) - Jetzt verbinden

27.04.2010 um 10:42 Uhr, 5184 Aufrufe, 12 Kommentare

Wie erkenne ich welche Platte (habe aktuell vier) defekt wäre/ist

Hi @all..

Eine meiner vier Fesplatten (alle SATA) hat sich gestern verabschiedet, nicht schlimm, uralte 160er, die quasi nur als Medium gedient hat, wenn ich Daten temporär zwischenspeichern musste.
Als solche benutzt ich die halt nicht regelmäßig, gestern ist die mir "nur" beim kopieren abgesemmelt. Fehler:

Fehlerhafter Block bei Gerät \Device\Harddisk0\D. (Sofern ich das noch richtig in Erinnerung habe).

Da diese Platte schon zwei drei mal beim booten nicht erkannt wurde oder sich auch schon ein zwei mal unter Windows selbst verabschiedet hat, war klar, dass es "nur" die" 160er getroffen haben kann.
Ich brauche jetzt keine Hilfe zu Datensicherung/Rekonstruktion, o.ä. nur folgendes würde ich gerne wissen:

WIE zählt Windows diese Festplatte intern auf oder wie könnte ich ohne expliziten Diagnoselauf (bei vier Festplatten mit gesamtkap. von 2,8 TB dauert mir das zu lange) nur Anhand der Meldung sagen: Die ist defekt ...

Kann ich anhand des Gerätemanagers oder sonstwie erkennen, welche Windows als defekt deklariert hat !?

Danke

Carsten
Mitglied: Snowman25
27.04.2010 um 10:46 Uhr
Hallo Carsten,

soweit ich das richtig in Erinerung habe, sieht das ugefähr so aus:

  1. Harddisk0
    1. Partition0
    2. Partition1
    3. Partition2
  2. Harddisk1
    1. VolumeC
    2. VolumeD
  3. Harddisk2
  4. Harddisk3

Gruß
Snow
Bitte warten ..
Mitglied: SamvanRatt
27.04.2010 um 10:54 Uhr
Hi
Windows nutzt nachdem der HAL Initiert wurde die Treiberreihenfolge wie sie die Registry vorgibt und beginnt dann jedes Blockdev Gerät zu nummerieren (0,1,2,...) danach Primäre Partitionen suchen und Buchstaben zuweisen (sofern diese unter Mounted Devices nicht nach VolID schon fest vergeben wurden) und danach Logische einzubinden.
Innerhalb der Treiber wird normal auch bei 0 begonnen (SATA oder SCSI mit LUNs) und dann vergeben. Die Darstellung in der Datenträgerverwaltung und die Eventlogs sind aber immer gleich.
Gruß
Sam
Bitte warten ..
Mitglied: cardisch
27.04.2010 um 11:06 Uhr
@snow..
So "kenne" oder besser vermute ich das ja auch...
Aber die Platte, die abgesemmelt ist hat den LW-Buchstaben E gehabt und beinhaltet eine einezelne primäre Partition.
Sie könnte aber am SATA COntroller 1 gehangen haben (und wenn MSI bei 1 anfangen zu zählen würde das die 0 unter Windows erklären (ich habe mir damals die Kanäle, den LW-Buchstaben und die Laufwerksgröße auf einen Aufkleber geschreiben und auf die Festplatte geklebt, genau für soclhe Fälle, damit ich sofort weiss, welche Platte ich gerade ausbauen will bei vier Platten ist es eng in einem MidiTower).
@SamvanRatt.
Und wo in der Registry kann man das genau sehen und wie verhalten sich externe Datenträger in so einem Fall ?!?

Danke

Carsten
Bitte warten ..
Mitglied: LotPings
27.04.2010 um 14:55 Uhr
Hallo Carsten,

leider schreibst du nicht welche Windows-Version du nutzt.

Um die Zuordnung der Laufwerksbustaben zu den Platten aufzulisten gibt es ein schönes vbscript:
01.
strComputer = "."
02.
Set oWMI = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
03.
Set cDrives = oWMI.ExecQuery("SELECT * FROM Win32_DiskDrive")
04.
 
05.
For Each oDrive In cDrives
06.
  DrvLetters=""
07.
  strDeviceID = Replace(oDrive.DeviceID, "\", "\\")
08.
  Set cParts = oWMI.ExecQuery ("ASSOCIATORS OF {Win32_DiskDrive.DeviceID=""" & strDeviceID & """} WHERE AssocClass = " & "Win32_DiskDriveToDiskPartition")
09.
  For Each oPart In cParts
10.
    Set cLogDisks = oWMI.ExecQuery("ASSOCIATORS OF {Win32_DiskPartition.DeviceID=""" & oPart.DeviceID & """} WHERE AssocClass = " & "Win32_LogicalDiskToPartition")
11.
    For Each oLogDisk In cLogDisks
12.
      DrvLetters = DrvLetters & oLogDisk.DeviceID
13.
    Next
14.
  Next
15.
  wscript.echo oDrive.Index & ":" & Left(oDrive.Caption & Space(25), 25) & " : " & DrvLetters
16.
Next
Das erzeugt bei mir diese Ausgabe:
14:43:07 D:\Test\vbs____________________
>get-Drive.vbs
0:Hitachi HDS722020ALA330 A : C:D:E:F:
1:SAMSUNG HD753LJ ATA Devic : I:J:G:
14:50:58 D:\Test\vbs____________________
Gruß
LotPings

PS: Ist nicht dokumentiert - Ich versuch ja selber noch es zu verstehen
Bitte warten ..
Mitglied: cardisch
27.04.2010 um 15:34 Uhr
Uups,

es handelt sich um Win XP pro, wie gesagt:
4*HDD (2*1TB Samsung, jeweils partitioniert (256/Rest und 768/Rest), 1*WD 500GB (50%/50%) und besagter 160er Seagate, in einem Stück partitioniert.
Da der PC bei mir zuhause rumsteht und ich gerade @work bin komme ich nicht an weitere Daten ran, dürfte aber eh unerheblich sein, oder ?!
"Leider" wirft das Script mit nur aus, dass ich eine HDD mit 2 Partitionen an C und D habe (keine Modellbezeichnung) und eine E-Platte (per USB, wird aber gerade nur mit einem Checkdisk geprüft, fliegt danach raus), die dafür mit Typbezeichnung...
Ich werfe das morgen (heute schaff ich das eher nicht mehr) mal an und gebe Donnerstag Bescheid.

Für das Script bedanke im mich aber schon einmal..

Carsten
Bitte warten ..
Mitglied: LotPings
27.04.2010 um 15:57 Uhr
Tja mein Beispiel mit Typenbez
waren eine 2TB Hitachi und ein 750GB Samsung.
Aber wenn das Laufwerk keine Infos herausgibt....

Zum Sammeln von weiterer Informationen zu HDs/Partitionen/LogDisks gibt es auf Basis der Scriptomatik von Microsoft VBScripte die ich nur etwas aufgehübscht habe,
den bei mir ellenlangen Beispielausdruck schenke ich uns.

Gruß
LotPings

01.
'EnumDiskPartLogDisk.vbs '-------------------------------------------
02.
'for Windows NT 4.0  WMI CORE 1.5 needed
03.
'http://www.microsoft.com/downloads/release.asp?ReleaseID=18491
04.
x=17
05.
On Error Resume Next
06.
strComputer = "."
07.
Set objShell = CreateObject("Shell.Application") 
08.
Set objWMIService = _
09.
  GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
10.
Set colItems = _
11.
  objWMIService.ExecQuery("Select * from Win32_DiskDrive",,48)
12.
Wscript.Echo "==Win32_DiskDrive=="
13.
For Each objItem in colItems
14.
  Wscript.Echo LJust ("SystemName:",X) & objItem.SystemName & "<<" & "<<"
15.
  Wscript.Echo LJust ("Caption:",X) & objItem.Caption & "<<"
16.
  Wscript.Echo LJust ("Compr.Method:",X) & objItem.CompressionMethod & "<<"
17.
  Wscript.Echo LJust ("Description:",X) & objItem.Description & "<<"
18.
  Wscript.Echo LJust ("DeviceID:",X) & objItem.DeviceID & "<<"
19.
  Wscript.Echo LJust ("Index:",X) & objItem.Index & "<<"
20.
  Wscript.Echo LJust ("InterfaceType:",X) & objItem.InterfaceType & "<<"
21.
  Wscript.Echo LJust ("Manufacturer:",X) & objItem.Manufacturer & "<<"
22.
  Wscript.Echo LJust ("MediaLoaded:",X) & objItem.MediaLoaded & "<<"
23.
  Wscript.Echo LJust ("MediaType:",X) & objItem.MediaType & "<<"
24.
  Wscript.Echo LJust ("Model:",X) & objItem.Model & "<<"
25.
  Wscript.Echo LJust ("Name:",X) & objItem.Name & "<<"
26.
  Wscript.Echo LJust ("Partitions:",X) & objItem.Partitions & "<<"
27.
  Wscript.Echo LJust ("PNPDeviceID:",X) & objItem.PNPDeviceID & "<<"
28.
  Wscript.Echo LJust ("SCSIBus:",X) & objItem.SCSIBus & "<<"
29.
  Wscript.Echo LJust ("SCSILogicalUnit:",X) & objItem.SCSILogicalUnit & "<<"
30.
  Wscript.Echo LJust ("SCSIPort:",X) & objItem.SCSIPort & "<<"
31.
  Wscript.Echo LJust ("SCSITargetId:",X) & objItem.SCSITargetId & "<<"
32.
  Wscript.Echo LJust ("Signature:",X) & objItem.Signature & "<<"
33.
  Wscript.Echo LJust ("Status:",X) & objItem.Status & "<<"
34.
  Wscript.Echo "----------------"
35.
  Wscript.Echo LJust ("TotalCylinders:",X) & objItem.TotalCylinders & "<<"
36.
  Wscript.Echo LJust ("TotalHeads:",X) & objItem.TotalHeads & "<<"
37.
  Wscript.Echo LJust ("TracksPerCyl.:",X) & objItem.TracksPerCylinder & "<<"
38.
  Wscript.Echo LJust ("SectorsPerTrack:",X) & objItem.SectorsPerTrack & "<<"
39.
  Wscript.Echo LJust ("TotalTracks:",X) & objItem.TotalTracks & "<<"
40.
  Wscript.Echo LJust ("TotalSectors:",X) & objItem.TotalSectors & "<<"
41.
  Wscript.Echo LJust ("BytesPerSector:",X) & objItem.BytesPerSector & "<<"
42.
  Wscript.Echo LJust ("Size          :",X) & objItem.Size & "<<"
43.
  Wscript.Echo "============================================"
44.
Next
45.

46.
Set colItems = _
47.
  objWMIService.ExecQuery("Select * from Win32_DiskPartition",,48)
48.
Wscript.Echo "==Win32_DiskPartition=="
49.
For Each objItem in colItems
50.
  Wscript.Echo LJust ("SystemName:",X) & objItem.SystemName & "<<"
51.
  Wscript.Echo LJust ("Bootable:",X) & objItem.Bootable & "<<"
52.
  Wscript.Echo LJust ("BootPartition:",X) & objItem.BootPartition & "<<"
53.
  Wscript.Echo LJust ("Caption:",X) & objItem.Caption & "<<"
54.
  Wscript.Echo LJust ("Description:",X) & objItem.Description & "<<"
55.
  Wscript.Echo LJust ("DeviceID:",X) & objItem.DeviceID & "<<"
56.
  Wscript.Echo LJust ("DiskIndex:",X) & objItem.DiskIndex & "<<"
57.
  Wscript.Echo LJust ("Index:",X) & objItem.Index & "<<"
58.
  Wscript.Echo LJust ("Name:",X) & objItem.Name & "<<"
59.
  Wscript.Echo LJust ("PrimaryPartit.:",X) & objItem.PrimaryPartition & "<<"
60.
  Wscript.Echo LJust ("Type:",X) & objItem.Type & "<<"
61.
  Wscript.Echo "----------------"
62.
  Wscript.Echo LJust ("BlockSize:",X) & objItem.BlockSize & "<<"
63.
  Wscript.Echo LJust ("NumberOfBlocks:",X) & objItem.NumberOfBlocks & "<<"
64.
  Wscript.Echo LJust ("Size:",X) & objItem.Size & " Bytes " & _ 
65.
  (objItem.Size / objItem.BlockSize) & " Blocks"
66.
  Wscript.Echo LJust ("StartingOffset:",X) & objItem.StartingOffset & _ 
67.
  " Bytes " & (objItem.StartingOffset / objItem.BlockSize) & " Blocks"
68.
  Wscript.Echo "============================================"
69.
Next
70.

71.
Set colItems = _
72.
  objWMIService.ExecQuery("Select * from Win32_LogicalDisk",,48)
73.
Wscript.Echo "==Win32_LogicalDisk=="
74.
For Each objItem in colItems
75.
  Wscript.Echo LJust ("SystemName:",X) & objItem.SystemName & "<<"
76.
  Wscript.Echo LJust ("Caption:",X) & objItem.Caption & "<<"
77.
  Wscript.Echo LJust ("VolumeName:",X) & objItem.VolumeName & "<<"
78.
  Wscript.Echo LJust ("Compressed:",X) & objItem.Compressed & "<<"
79.
  Wscript.Echo LJust ("Description:",X) & objItem.Description & "<<"
80.
  Wscript.Echo LJust ("DeviceID:",X) & objItem.DeviceID & "<<"
81.
  Wscript.Echo LJust ("DriveType:",X) & objItem.DriveType & "<<"
82.
  Wscript.Echo LJust ("FileSystem:",X) & objItem.FileSystem & "<<"
83.
  Wscript.Echo LJust ("MediaType:",X) & objItem.MediaType & "<<"
84.
  Wscript.Echo LJust ("Name:",X) & objItem.Name & "<<"
85.
  Wscript.Echo LJust ("Size:",X) & objItem.Size & "<<"
86.
  Wscript.Echo LJust ("FreeSpace:",X) & objItem.FreeSpace & "<<"
87.
  Wscript.Echo LJust ("VolumeSerNum:",X) & objItem.VolumeSerialNumber & "<<"
88.
  Wscript.Echo LJust ("DrvSelfName:",X) & objShell.NameSpace(objItem.DeviceID).Self.Name & "<<"
89.
  
90.
  Wscript.Echo "============================================"
91.
Next
92.

93.
Function LJust(Wert, Laenge)
94.
  If len (Wert) < Laenge then
95.
    LJust=Left(Wert & Space(Laenge), Laenge)
96.
  Else
97.
    LJust=Wert
98.
   End If
99.
end Function 
100.

101.
'EnumDiskPartLogDisk.vbs '-------------------------------------------
Bitte warten ..
Mitglied: SamvanRatt
27.04.2010 um 17:48 Uhr
Such unter CriticalDeviceDatabase; dort wird der Reihe nach (PCI Order von niedrigstem Slot bis höchsten Slot) nachgesehen und vermerkt. Externe kommen halt drauf an wie sie angeschlossen sind; SCSI, SAS, eSATA erscheinen kurzerhand wie interne; USB wird mit dem USB Treiber (sehr spät erst, da sind nahezu alle Dienste bereits dran) initiiert und dann die daranhängenden Geräte. Da die Reihenfolge immer bei Null beginnt kann es auch sein das dein Bootgerät HD5 ist während 0 ein SAS Kontroller, 3 ein IDE Gerät z.B. ist. Das ist nicht statisch (vergleichbar mit den Linux SG und SD geräten)
Gruß
Sam
Bitte warten ..
Mitglied: cardisch
30.04.2010 um 08:17 Uhr
@Lordpings

Hat super funktioniert, danke für die Scripte

@Snowman

Ich würde auch noch gerne deine Zählweise verstehen..
Korrigier mich, wenn ich falsch liege.
\harddisk0\A =1. Partition auf der 0. Platte (Kann ich daraus folgern, ob das eine aktive, primäre, oder sonstwie geartete Platte ist ?!)
\harddisk1\D = 2. Partition auf der 1. Platte...

Werden die 8 MB "Partitionen" bei den XP-PC´s mitgezählt ?!?

Danke

Carsten
Bitte warten ..
Mitglied: Snowman25
30.04.2010 um 10:21 Uhr
Zitat von cardisch:
\harddisk0\A =1. Partition auf der 0. Platte (Kann ich daraus folgern, ob das eine aktive, primäre, oder sonstwie geartete
Platte ist ?!)
Nein. Das kannst du so nicht.

\harddisk1\D = 2. Partition auf der 1. Platte...
Eher Partition mit Buchstaben D auf der 1. Platte (bzw. eig. 2. Platte)

Werden die 8 MB "Partitionen" bei den XP-PC´s mitgezählt ?!?
Sind die nicht unzugeordneter Speicherplatz? Insofern also nein
Laut Windows werden dort zusätzliche Partitionsinformationen bei Multipartitionsfestplatten gespeichert. Allerdings war es bis jetzt immer egal, ob ich die 8 MB später per Partition Magic angefügt habe oder nicht.

Gruß
Snow
Bitte warten ..
Mitglied: cardisch
30.04.2010 um 12:54 Uhr
@snow
Aber warum hat mir die Ereignisanzeige definitv harddisk0\d als korrupt markiert..
Im nachhinein kann ich zwar sagen, dass es die 0.Platte war (laut dem Script), aber es ist eine einzelne, vermutlich primäre Partition drauf gewesen, LW-Buchstabe E:\
Es kann natürlich sein, dass de Platte irgendwann mal den Buchstaben D:\ hatte und ich den in der Datenträgerverwaltung "korrigiert" habe, da das System aber ca 3,5 Jahre alt ist, kann ich das nicht 100%ig behaupten.
Kann das Problem also daher rühren ?!?

Grúß

Carsten
Bitte warten ..
Mitglied: Snowman25
30.04.2010 um 13:04 Uhr
Naja, es ist ja kein wirkliches Problem.
Der Buchstabe in der Datenträgerverwaltung muss mit dem auf der Platte nicht übereinstimmen.
Bitte warten ..
Mitglied: cardisch
05.05.2010 um 15:54 Uhr
Hi@all
Auch wenn ich gerne ein paar mehr Detail bekommen hätte (aber von Bill, nicht von euch), so gebe ich mich mit allen Antworten (und vor allem den Scripten) mehr als zufrieden....
Im Prinzip ist ja auch egal WELCHE Partition den Fehler anzeigt, wenn es so weit ist, tausche ich die ganze Platte und nicht nnur die defekte Partition aus )

Danke an alle

Carsten
Bitte warten ..
Ähnliche Inhalte
Windows Server

Ueberwachungstool MS-Windows 2008 - Domaincontroller

Frage von kellbiddenWindows Server3 Kommentare

Hallo Zusammen Ich habe den Auftrag gefasst, eine Zugriffs-Ueberwachungssoftware für einen 2008-er Server R2, Rolle als Domaincontroller, zu evaluieren. ...

Windows Server

Windows Server 2008 R2 - MS Dynamics - MDE

Frage von Flyer400Windows Server3 Kommentare

Hallo zusammen - wer hat eine Idee, kann helfen oder hatte dieses Problem schon gehabt? Wir haben unsere Windows ...

Windows 10

Windows 10 - MS-Edge und Kontakte-App

gelöst Frage von Critter-LBSWindows 102 Kommentare

Hallo zusammen, ich habe meine PS1 fertig, um alle Win10-Apps zu deinstallieren, die ich nicht auf meiner Kiste haben ...

Windows Server

MS Faxservice stirbt plötzlich ab . Windows 2008R2

gelöst Frage von keine-ahnungWindows Server3 Kommentare

Moin at all, ich habe von heute auf gleich ein Problem mit dem MS Faxservice auf einer Kiste von ...

Neue Wissensbeiträge
Outlook & Mail

Outlook 2016 stürzt ab, wenn man ein (at)- Zeichen im Text einer neuen E-Mail schreibt

Tipp von Enriqe vor 3 MinutenOutlook & Mail

Bei uns in der Firma häuften sich die Fälle, bei denen sich Outlook kommentarlos verabschiedet, wenn man ein - ...

Google Android

Google sperrt Android-Updates und den Play Store für Huawei

Information von Deepsys vor 23 StundenGoogle Android8 Kommentare

Das finde ich schon ein starkes Stück, Trump der Welt Diktator. So kann man mit einem Dekret mal eben ...

Windows 7

Südkoreas Regierung setzt auf Linux, um Windows 7 Clients abzulösen

Information von kgborn vor 1 TagWindows 74 Kommentare

Kleiner Infosplitter zum Wochenanfang: Während München (LiMux) und die niedersächsische Finanzverwaltung von Linux auf einen Windows 10-Client (und Office) ...

Internet
Big Brother is Watching You
Information von transocean vor 1 TagInternet1 Kommentar

Moin, die Datenkrake Google fischt Informationen über Einkäufe ab, die GMail Nutzer im Netz tätigen. Gruß Uwe

Heiß diskutierte Inhalte
Windows 10
Windows am MAC
Frage von LeeX01Windows 1016 Kommentare

Guten Abend zusammen, ich habe gerade ein Macbook Pro vor mir welches ich mit einem Windows 10 to go ...

Humor (lol)
Mitarbeiter meldet: VPN funktioniert nicht
gelöst Frage von Epixc0reHumor (lol)13 Kommentare

Servus, einer unserer Mitarbeiter meldete heute, sein VPN funktioniert Zuhause nicht, im LTE Netz aber schon. Per Teamviewer hin ...

Linux Userverwaltung
Ist sudo auf Servern Pflicht?
gelöst Frage von lcer00Linux Userverwaltung13 Kommentare

Hallo zusammen, wir haben für einige Netzwerkdienste einige Debian Server. Auf diesen Servern arbeiten keine Benutzer im eigentlichen sinne. ...

Batch & Shell
Powershell Datum der zuletzt eingespielten Patche bei remote Servern ermitteln
Frage von bensonhedgesBatch & Shell13 Kommentare

Hallo, ich möchte gerne anhand einer Serverliste (bsp. computers.txt) via PS ermitteln, wann derjeweilige Server zuletzt gepatcht wurde (Liste ...