Sprawdź, czy dysk twardy znajduje się w trybie uśpienia w systemie Windows

12

Czy mogę w jakiś sposób sprawdzić, czy mój dysk twardy rzeczywiście się obraca lub znajduje się w trybie uśpienia w systemie Windows 7?
Szukam odpowiedzi na wewnętrzne i zewnętrzne dyski twarde; nie zawsze mają światło, które wskazuje ich status.

Pablo
źródło
Dysk zewnętrzny: patrz lampka stanu. Wewnętrzne dyski będą spały razem, więc żadne narzędzie nie może zostać uruchomione. Aby uzyskać bardziej sensowną odpowiedź, potrzeba więcej szczegółów.
harrymc
Mam zarówno dyski wewnętrzne, jak i zewnętrzne. Obudowy, które dostałem, nie mają światła pokazującego tryb uśpienia. Myślałem, że pytanie jest bardzo proste i wiem, jak to zrobić w Linuksie, ale nie mogłem znaleźć oprogramowania dla Win.
Pablo
To pytanie ma pewne logiczne problemy, na ogół musisz załadować aplikację, aby sprawdzić dysk twardy, który obraca dysk twardy. Za każdym razem, gdy przeprowadzasz kontrolę, obracasz się na dysku twardym. Rzeczywiście potrzebujesz niektórych narzędzi, które pozostają w pamięci, gadżetu okiennego lub prawdopodobnie ikony na pasku zadań, które nadal monitorują, czy dyski powinny działać.
Oto link: po tym, jak Microsoft usunął platformę paska bocznego ... chcą, abyś kupił okno 8 ... :)

Odpowiedzi:

5

smartctlNarzędzie wiersza polecenia z Smartmontools oferuje dokładnie tę funkcjonalność z -nprzełącznikiem. Od strony man :

-n POWERMODE, --nocheck = POWERMODE
[tylko ATA] Określa, czy smartctl powinien wyjść przed wykonaniem jakichkolwiek kontroli, gdy urządzenie znajduje się w trybie niskiego zużycia energii. Może być użyty, aby zapobiec rozpędzeniu dysku przez smartctl.

Działa z nie podniesionego terminala, nawet jako jedyny argument opcji, co sprawia, że ​​jego użycie jest bardzo proste w przypadku dysków wewnętrznych:

> 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)

podczas gdy napęd wirujący zgłasza się Device is in ACTIVE or IDLE mode

Zewnętrzne dyski i / lub egzotyczne kontrolery mogą być trudniejsze i wymagać przeczytania na -dprzełączniku.

kRush
źródło
4

Możesz uruchomić DiskMon, który pokazywałby całą aktywność na każdym dysku w twoim systemie. Żadne wpisy nie sugerują, że dysk jest w trybie uśpienia.

Ograniczone testy tutaj potwierdzają, że tak się wydaje. Podczas próby uzyskania dostępu do dysku, który nie jest wymieniony w bieżących transakcjach, pojawia się opóźnienie, zanim dysk pojawi się w oknie DiskMon, wskazując, że został zwirowany.

Przyznaję, że to trochę prymitywne!

Łunatik
źródło
3

To nieeleganckie rozwiązanie, ale spróbuj zainstalować wersję hdparm dla systemu Windows . Następnie uruchom hdparm.exe -C [drivename]z katalogu, w którym został zainstalowany (zwykle Program Files (x86)lub podobny). Korzystając z tej metody, byłem w stanie stwierdzić, czy moje dyski są aktywne / bezczynne, czy w trybie gotowości (spanie i nie wirowanie).

Nazwa dysku to adres urządzenia w stylu UNIX, który jest w jakiś sposób odwzorowany na literę dysku fizycznego / urządzenie z systemem Windows ( /dev/hdazwykle jest to dysk podstawowy /dev/hdbitd.), Ale nie jestem pewien, jak ustalić, jakie aliasy urządzeń UNIX są dostępne pod oknami. Możesz upewnić się, że dany /dev/hd_alias odpowiada poprawnemu napędowi, uruchamiając hdparm.exe -i [drivename]go i sprawdzając dane wyjściowe, aby sprawdzić, czy parametry napędu są zgodne z oczekiwanymi.

Byłoby miło, gdyby istniało narzędzie graficzne i / lub natywne dla Windows, aby uzyskać tę funkcjonalność, ale nie znam żadnego z nich.

Nadal jest to system UNIX, ale możesz także spróbować pobawić się wersją smartmontools dla systemu Windows i sprawdzić, czy oferuje podobną funkcjonalność w bardziej użytecznym pakiecie. Jednak nie mam żadnego doświadczenia z tym oprogramowaniem.

Zac B
źródło
4
smartmontools używa SMART - ale każde użycie SMART na dysku do spania obudzi go. Sprawa Catch-22.
harrymc
1

Możesz użyć skryptu PowerShell, aby uzyskać status napędów dysków, dla których te informacje są dostępne (nie wszystkie napędy zwracają ten status).

Wypróbuj to w konsoli Windows PowerShell (prawdopodobnie uruchom jako administrator):

Get-WMIObject -class Win32_DiskDrive | Select-Object caption,availability

Interesujące wartości dostępności można znaleźć tutaj :

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

Jeśli Win32_DiskDrive nie działa dla Ciebie, inne możliwości to Win32_LogicalDisk i Win32_Volume.

Jeśli którykolwiek z nich działa, możesz również utworzyć skrypt, na przykład:

$strComputer = "."
$colItems = get-wmiobject -class "Win32_Volume" -namespace "root\cimv2" -computername strComputer
foreach ($objItem in $colItems) {
      write-host "Name: " $objItem.Name " Availability: " $objItem.Availability
}
harrymc
źródło
7
Powinieneś tutaj skomentować, że atrybut dostępności jest zawsze wyświetlany jako pusty - myślę, że prawdopodobnie nie jest zaimplementowany przez Microsoft. Problem ze wszystkimi narzędziami statusu dysku, które udało mi się znaleźć, polega na tym, że używają SMART, który obudzi uśpiony dysk, więc jest to prawdziwa zagadka. Myślę, że powinieneś skontaktować się z firmą Microsoft, aby złożyć skargę na niedziałający atrybut dostępności.
harrymc 11.09.13
1
Właśnie wypróbowałem to na WS2008 R2 z Powershell 2, a także dostaję pustą wartość dla dostępności
AFract
0

Metoda zapisywania po awarii: z uchem umieszczonym na dysku lub w miejscu na laptopie, gdzie znajduje się dysk, uruchom dostęp do dysku. Z każdym dyskiem mechanicznym powinieneś wyraźnie usłyszeć dźwięk spin-up, jeśli napęd był w trybie uśpienia.

Timar
źródło
Celem jest prawdopodobnie więcej wiedzieć, czy / kiedy dysk twardy znajduje się w trybie uśpienia, zamiast go obudzić ...
AFract
0

Możesz użyć fajnego darmowego oprogramowania Uwe Siebers FFB - Flush File Buffers .

FFB to narzędzie wiersza polecenia, które opróżnia pamięć podręczną zapisu jednego lub więcej woluminów pamięci.

...

Dyski uśpione są pomijane, chyba że podano -f.

Nieobsługiwany wyjątek
źródło