Ver si HDD está en modo de suspensión para Windows

12

¿Hay alguna manera de ver si mi disco duro está realmente girando o en modo de suspensión en Windows 7?
Estoy buscando respuestas para discos duros internos y externos; no siempre tienen una luz para indicar su estado.

Pablo
fuente
Unidad externa: considere la luz de estado. Las unidades internas dormirán todas juntas, por lo que no se puede ejecutar ninguna utilidad. Se necesitan más detalles para una respuesta más significativa.
harrymc
Tengo unidades internas y externas. Los gabinetes que obtuve no tienen luz que muestre el modo de suspensión. Pensé que la pregunta es muy simple y sé cómo hacerlo en Linux, pero no pude encontrar el software para Win.
Pablo
Esta pregunta tiene algunos problemas lógicos, en general, debe cargar la aplicación para verificar el disco duro, que gira su disco duro. Terminas haciendo girar el disco duro cada vez que realizas la comprobación. Lo que realmente necesita son algunas herramientas, que permanecen en la memoria, un dispositivo de ventana o probablemente un icono de bandeja, que continúan monitoreando sus discos deberían funcionar.
Aquí está el enlace: después de que Microsoft haya eliminado la plataforma de la barra lateral ... quieren que compre la ventana 8 ... :)

Respuestas:

5

La smartctlutilidad de línea de comandos de smartmontools ofrece exactamente esta funcionalidad con el -nconmutador. Desde la página del manual :

-n POWERMODE, --nocheck = POWERMODE
[solo ATA] Especifica si smartctl debe salir antes de realizar cualquier verificación cuando el dispositivo está en modo de bajo consumo. Se puede usar para evitar que smartctl acelere un disco.

Funciona desde un terminal no elevado incluso como el único argumento de opción, lo que hace que su uso sea bastante sencillo para las unidades internas:

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

mientras que un disco giratorio informa Device is in ACTIVE or IDLE mode

Las unidades externas y / o los controladores exóticos pueden ser más complicados y requieren que lea sobre el -dconmutador.

kRush
fuente
4

Puede ejecutar DiskMon que mostrará toda la actividad en cada unidad de su sistema. Ninguna entrada sugeriría que el disco está en modo de suspensión.

Las pruebas limitadas aquí confirman que este parece ser el caso de todos modos. Al intentar acceder a una unidad que no figura en la lista de las transacciones actuales, hay una demora antes de que la unidad aparezca en la ventana de DiskMon, lo que indica que se ha desactivado.

¡Es un poco tosco, lo admito!

Lunatik
fuente
3

Es una solución poco elegante, pero intente instalar la versión para Windows de hdparm . Luego, ejecute hdparm.exe -C [drivename]desde el directorio en el que se instaló (generalmente Program Files (x86)o similar). Usando este método, pude saber si mis unidades estaban activas / inactivas, o en espera (durmiendo y sin girar).

El nombre de la unidad es una dirección de dispositivo de estilo UNIX que se asigna de alguna manera a una letra de unidad / dispositivo físico de Windows ( /dev/hdageneralmente es su unidad principal, y así /dev/hdbsucesivamente), pero no estoy seguro de cómo determinar qué alias de dispositivos UNIX están disponibles bajo ventanas Puede asegurarse de que un /dev/hd_alias dado corresponda con la unidad correcta ejecutando hdparm.exe -i [drivename]el alias y verificando la salida para ver si los parámetros de la unidad coinciden con lo que espera.

Sería bueno si hubiera una utilidad gráfica y / o nativa de Windows para obtener esta funcionalidad, pero no conozco una.

Todavía es UNIX-ish, pero también puede intentar jugar con la versión de Windows de smartmontools , y ver si ofrece una funcionalidad similar en un paquete más utilizable. Sin embargo, no tengo ninguna experiencia con ese software.

Zac B
fuente
44
smartmontools usa SMART, pero cualquier uso de SMART en una unidad inactiva lo activará. Un caso de Catch-22.
harrymc
1

Puede usar un script de PowerShell para obtener el estado de las unidades de disco para las cuales esta información está disponible (no todas las unidades devuelven este estado).

Pruebe esto en una consola de Windows PowerShell (probablemente ejecutada como administrador):

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

Los valores interesantes de disponibilidad se pueden encontrar aquí :

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

Si Win32_DiskDrive no funciona para usted, otras posibilidades son Win32_LogicalDisk y Win32_Volume.

Si alguno de ellos funciona, también puede crear un script, por ejemplo:

$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
fuente
66
Debería haber comentado aquí que el atributo de disponibilidad siempre se muestra vacío; creo que probablemente Microsoft no lo haya implementado. El problema con todas las utilidades de estado de disco que pude encontrar es que usan SMART, que activará una unidad inactiva, por lo que este es un verdadero enigma. Creo que debe comunicarse con Microsoft para quejarse de que el atributo de disponibilidad no funciona.
harrymc
Acabo de probarlo en un WS2008 R2 con Powershell 2 y también obtengo un valor vacío de Disponibilidad
AFract
0

Método de ahorro de fallos: con la oreja apoyada en la unidad o el lugar de la computadora portátil donde se encuentra la unidad, active el acceso a la unidad. Con cualquier disco mecánico, debe escuchar claramente un sonido giratorio si la unidad ha estado en modo de suspensión.

Timar
fuente
El objetivo es probablemente más saber si / cuando un HDD está en modo de suspensión en lugar de despertarlo ...
AFract
0

Usted podría usar Uwe Siebers agradable freeware FFB - Flush File Buffers .

FFB es una herramienta de línea de comandos que vacía la caché de escritura de uno o más volúmenes de almacenamiento.

...

Las unidades dormidas se omiten a menos que se proporcione -f.

Excepción no controlada
fuente