มีวิธีให้ฉันดูว่าฮาร์ดไดรฟ์ของฉันกำลังหมุนหรืออยู่ในโหมดสลีปภายใต้ Windows 7 หรือไม่?
ฉันกำลังมองหาคำตอบสำหรับฮาร์ดไดรฟ์ทั้งภายในและภายนอก พวกเขาไม่มีไฟแสดงสถานะของพวกเขา
มีวิธีให้ฉันดูว่าฮาร์ดไดรฟ์ของฉันกำลังหมุนหรืออยู่ในโหมดสลีปภายใต้ Windows 7 หรือไม่?
ฉันกำลังมองหาคำตอบสำหรับฮาร์ดไดรฟ์ทั้งภายในและภายนอก พวกเขาไม่มีไฟแสดงสถานะของพวกเขา
คำตอบ:
smartctl
อรรถประโยชน์บรรทัดคำสั่งของsmartmontoolsเสนอว่าการทำงานนี้กับ-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
สวิตช์
คุณสามารถเรียกใช้DiskMonซึ่งจะแสดงกิจกรรมทั้งหมดในแต่ละไดรฟ์ในระบบของคุณ ไม่มีรายการแนะนำให้ดิสก์อยู่ในโหมดสลีป
การทดสอบที่ จำกัด ที่นี่ยืนยันว่าจะเป็นเช่นนั้น เมื่อพยายามเข้าถึงไดรฟ์ที่ไม่ได้อยู่ในรายการปัจจุบันมีความล่าช้าก่อนที่ไดรฟ์จะปรากฏขึ้นในหน้าต่าง DiskMon เพื่อระบุว่ามีการปั่นลง
มันค่อนข้างหยาบฉันยอมรับ!
มันเป็นวิธีการแก้ปัญหาไม่งดงาม แต่ลองติดตั้งหน้าต่างรุ่นของ hdparm จากนั้นเรียกใช้hdparm.exe -C [drivename]
จากไดเรกทอรีที่ติดตั้งไว้ (ปกติProgram Files (x86)
หรือคล้ายกัน) เมื่อใช้วิธีนี้ฉันสามารถบอกได้ว่าไดรฟ์ของฉันทำงานอยู่ / ไม่ได้ใช้งานหรืออยู่ในโหมดสแตนด์บาย
ชื่อไดรฟ์คือที่อยู่อุปกรณ์รูปแบบ UNIX ซึ่งถูกแมปกับตัวอักษรไดรฟ์ / อุปกรณ์ฟิสิคัลของ Windows ( /dev/hda
โดยปกติคือไดรฟ์หลักของคุณจากนั้น/dev/hdb
เป็นต้น) แต่ฉันไม่แน่ใจว่าจะกำหนดนามแฝงของอุปกรณ์ UNIX ใดบ้าง ภายใต้หน้าต่าง คุณสามารถตรวจสอบให้แน่ใจว่า/dev/hd_
นามแฝงที่กำหนดนั้นสอดคล้องกับไดรฟ์ที่ถูกต้องโดยใช้hdparm.exe -i [drivename]
ชื่อแทนและตรวจสอบผลลัพธ์เพื่อดูว่าพารามิเตอร์ของไดรฟ์ตรงกับสิ่งที่คุณคาดหวังหรือไม่
มันจะดีถ้ามีกราฟิกและ / หรือ native-windows เพื่อรับฟังก์ชั่นนี้ แต่ฉันไม่รู้
มันยังคงเป็น UNIX-ish แต่คุณสามารถลองเล่นกับsmartmontoolsเวอร์ชัน Windows และดูว่ามันมีฟังก์ชั่นที่คล้ายกันในแพ็คเกจที่ใช้งานได้มากกว่าหรือไม่ แต่ฉันไม่เคยมีประสบการณ์กับซอฟต์แวร์นั้น
คุณสามารถใช้สคริปต์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 ฟรีแวร์FFB - Flush File Buffers ที่ดี
FFB เป็นเครื่องมือบรรทัดคำสั่งซึ่งจะล้างแคชการเขียนของโวลุ่มหน่วยความจำตั้งแต่หนึ่งตัวขึ้นไป
...
ไดร์ฟการนอนหลับจะถูกข้ามไปจนกว่าจะได้รับ