Kann ich feststellen, ob sich meine Festplatte unter Windows 7 tatsächlich dreht oder sich im Energiesparmodus befindet?
Ich suche nach Antworten für interne und externe Festplatten. Sie haben nicht immer ein Licht, um ihren Status anzuzeigen.
Kann ich feststellen, ob sich meine Festplatte unter Windows 7 tatsächlich dreht oder sich im Energiesparmodus befindet?
Ich suche nach Antworten für interne und externe Festplatten. Sie haben nicht immer ein Licht, um ihren Status anzuzeigen.
Antworten:
Das smartctl
Kommandozeilenprogramm von smartmontools bietet genau diese Funktionalität mit dem -n
Switch. Von der Manpage :
-n POWERMODE, --nocheck = POWERMODE
[nur ATA] Gibt an, ob smartctl beendet werden soll, bevor Überprüfungen durchgeführt werden, wenn sich das Gerät im Energiesparmodus befindet. Es kann verwendet werden, um zu verhindern, dass eine Festplatte von smartctl hochgefahren wird.
Es funktioniert von einem nicht erhöhten Terminal aus, selbst als einziges Optionsargument, was seine Verwendung für interne Laufwerke ziemlich unkompliziert macht:
> smartctl.exe -n standby d:
smartctl 6.5 2016-05-07 r4318 [x86_64-w64-mingw32-win10] (sf-6.5-1)
Copyright (C) 2002-16, Bruce Allen, Christian Franke, www.smartmontools.org
d:: Device is in STANDBY (OS) mode, exit(2)
während ein drehender Antrieb meldet Device is in ACTIVE or IDLE mode
Externe Laufwerke und / oder exotische Controller sind möglicherweise schwieriger und erfordern, dass Sie den -d
Switch nachlesen .
Sie könnten DiskMon ausführen, das alle Aktivitäten auf jedem Laufwerk in Ihrem System anzeigt . Keine Einträge weisen darauf hin, dass sich die Festplatte im Energiesparmodus befindet.
Eingeschränkte Tests bestätigen, dass dies ohnehin der Fall zu sein scheint. Wenn Sie versuchen, auf ein Laufwerk zuzugreifen, das in den aktuellen Transaktionen nicht aufgeführt ist, tritt eine Verzögerung auf, bevor das Laufwerk im DiskMon-Fenster angezeigt wird und anzeigt, dass es heruntergefahren wurde.
Ich gebe zu, es ist ein bisschen grob!
Es ist eine unelegante Lösung, aber versuchen Sie, die Windows-Version von hdparm zu installieren . Führen Sie dann hdparm.exe -C [drivename]
das Verzeichnis aus, in das es installiert wurde (normalerweise Program Files (x86)
oder ähnliches). Mit dieser Methode konnte ich feststellen, ob meine Laufwerke aktiv / inaktiv waren oder sich im Standby-Modus befanden (Ruhezustand und keine Drehung).
Der Laufwerksname ist eine UNIX-artige Geräteadresse, die in irgendeiner Weise einem Windows-Laufwerksbuchstaben / einem physischen Gerät zugeordnet ist ( /dev/hda
normalerweise Ihr primäres Laufwerk /dev/hdb
usw.), aber ich bin nicht sicher, wie ich feststellen kann, welche UNIX-Gerätealiasnamen verfügbar sind unter Fenstern. Sie können sicherstellen, dass ein bestimmter /dev/hd_
Alias dem richtigen Laufwerk entspricht, indem Sie ihn hdparm.exe -i [drivename]
ausführen und die Ausgabe überprüfen, um festzustellen, ob die Laufwerksparameter mit den von Ihnen erwarteten übereinstimmen.
Es wäre schön, wenn es ein grafisches und / oder natives Windows-Hilfsprogramm gäbe, um diese Funktionalität zu erhalten, aber ich kenne kein einziges.
Es ist immer noch UNIX-konform, aber Sie können auch versuchen, mit der Windows-Version von smartmontools herumzuspielen und herauszufinden , ob sie ähnliche Funktionen in einem besser verwendbaren Paket bietet. Ich habe jedoch keine Erfahrung mit dieser Software.
Sie können ein PowerShell- Skript verwenden, um den Status von Laufwerken abzurufen, für die diese Informationen verfügbar sind (nicht alle Laufwerke geben diesen Status zurück).
Versuchen Sie dies in einer Windows PowerShell-Konsole (möglicherweise als Administrator ausgeführt):
Get-WMIObject -class Win32_DiskDrive | Select-Object caption,availability
Die interessanten Werte zur Verfügbarkeit finden Sie hier :
3 (0x3) : Running or Full Power
7 (0x7) : Power Off
8 (0x8) : Off Line
13 (0xD) : Power Save - Unknown
14 (0xE) : Power Save - Low Power Mode
15 (0xF) : Power Save - Standby
16 (0x10) : Power Cycle
17 (0x11) : Power Save - Warning
Wenn Win32_DiskDrive für Sie nicht funktioniert, sind andere Möglichkeiten Win32_LogicalDisk und Win32_Volume.
Wenn einer von ihnen funktioniert, können Sie auch ein Skript erstellen, zum Beispiel:
$strComputer = "."
$colItems = get-wmiobject -class "Win32_Volume" -namespace "root\cimv2" -computername strComputer
foreach ($objItem in $colItems) {
write-host "Name: " $objItem.Name " Availability: " $objItem.Availability
}
Fail-Save-Methode: Triggern Sie einen Laufwerkzugriff, während Ihr Ohr auf dem Laufwerk oder der Stelle auf dem Laptop liegt, an der sich das Laufwerk befindet. Bei jeder mechanischen Festplatte sollten Sie deutlich ein Hochlaufgeräusch hören, wenn sich das Laufwerk im Energiesparmodus befindet.
Du könntest Uwe Siebers nette Freeware FFB - Flush File Buffers verwenden .
FFB ist ein Befehlszeilentool, mit dem der Schreibcache eines oder mehrerer Speichervolumes geleert wird.
...
Schlafende Laufwerke werden übersprungen, sofern -f nicht angegeben wird.