Windows 7에서 하드 드라이브가 실제로 회전하는지 아니면 절전 모드인지 확인할 수있는 방법이 있습니까?
내장 및 외장 하드 드라이브 모두에 대한 답변을 찾고 있습니다. 상태를 나타내는 표시등이 항상있는 것은 아닙니다.
Windows 7에서 하드 드라이브가 실제로 회전하는지 아니면 절전 모드인지 확인할 수있는 방법이 있습니까?
내장 및 외장 하드 드라이브 모두에 대한 답변을 찾고 있습니다. 상태를 나타내는 표시등이 항상있는 것은 아닙니다.
답변:
smartmontools 의 smartctl
명령 줄 유틸리티 는 스위치 와 함께이 기능을 정확하게 제공합니다 . 로부터 man 페이지 :-n
-n POWERMODE, --nocheck = POWERMODE
[ATA 만 해당] 장치가 저전력 모드에있을 때 점검을 수행하기 전에 smartctl을 종료해야하는지 여부를 지정합니다. smartctl에 의해 디스크가 회전하는 것을 방지하기 위해 사용될 수 있습니다.
유일한 옵션 인수로도 높이가 아닌 터미널에서 작동하므로 내부 드라이브에 매우 간단하게 사용할 수 있습니다.
> 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)
스피닝 드라이브는 Device is in ACTIVE or IDLE mode
외장 드라이브 및 / 또는 이국적인 컨트롤러는 더 까다로울 수 있으며 -d
스위치 를 읽어야합니다 .
우아하지 않은 솔루션이지만 Windows 버전의 hdparm을 설치하십시오 . 그런 다음 hdparm.exe -C [drivename]
설치된 디렉토리 (보통 Program Files (x86)
또는 이와 유사한 것)에서 실행하십시오. 이 방법을 사용하여 드라이브가 활성 / 유휴 상태인지 또는 대기 상태인지 (슬립 및 회전하지 않는지) 알 수있었습니다.
드라이브 이름은 UNIX 스타일 장치 주소이며 Windows 드라이브 문자 / 물리적 장치 ( /dev/hda
일반적으로 주 드라이브 등 )에 매핑 /dev/hdb
되지만 사용 가능한 UNIX 장치 별칭을 결정하는 방법을 잘 모르겠습니다 창문 아래. 별명에서 /dev/hd_
실행 hdparm.exe -i [drivename]
하고 드라이브 매개 변수가 예상 한 것과 일치하는지 출력을 확인하여 지정된 별명이 올바른 드라이브에 해당 하는지 확인할 수 있습니다.
이 기능을 사용하기위한 그래픽 및 / 또는 기본 Windows 유틸리티가 있으면 좋을 것입니다.
여전히 유닉스 계열이지만 Windows 버전의 smartmontools로 놀아 보고 더 유용한 패키지로 비슷한 기능을 제공하는지 확인할 수 있습니다. 그래도 그 소프트웨어에 대한 경험이 없습니다.
PowerShell 스크립트를 사용 하여이 정보를 사용할 수있는 디스크 드라이브의 상태를 얻을 수 있습니다 (일부 드라이브가이 상태를 돌려주지는 않습니다).
Windows PowerShell 콘솔에서 시도하십시오 (아마도 관리자 권한으로 실행).
Get-WMIObject -class Win32_DiskDrive | Select-Object caption,availability
가용성에 대한 흥미로운 값은 여기 에서 찾을 수 있습니다 .
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
Win32_DiskDrive가 작동하지 않으면 다른 가능성은 Win32_LogicalDisk 및 Win32_Volume입니다.
이들 중 하나가 작동하면 다음과 같은 스크립트를 작성할 수도 있습니다.
$strComputer = "."
$colItems = get-wmiobject -class "Win32_Volume" -namespace "root\cimv2" -computername strComputer
foreach ($objItem in $colItems) {
write-host "Name: " $objItem.Name " Availability: " $objItem.Availability
}
Uwe Siebers nice freeware FFB-Flush File Buffers를 사용할 수 있습니다 .
FFB는 하나 이상의 스토리지 볼륨의 쓰기 캐시를 플러시하는 명령 줄 도구입니다.
...
-f를 지정하지 않으면 절전 드라이브를 건너 뜁니다.