มีเครื่องมือทดสอบการทรมานที่ดีหรือไม่?


17

ฉันได้รับความเสียหายที่แปลกและหายากของระบบไฟล์เมื่อเร็ว ๆ นี้ที่ฉันสงสัยว่าเป็นความผิดของ SSD ฉันกำลังมองหาเครื่องมือทดสอบการทรมานที่ดี สิ่งที่สามารถเขียนไปยังดิสก์ทั้งหมดจากนั้นย้อนกลับไปและอ่านเพื่อค้นหาการเขียนที่ถูกบล็อกบล็อกที่เสียหายบล็อกที่แปลงกลับไปเป็นรุ่นที่เก่ากว่าและข้อผิดพลาดอื่น ๆ นี่จะเป็นมากกว่าสิ่งที่badblocksทำ มีเครื่องมือดังกล่าวหรือไม่?

หมายเหตุฉันไม่ได้มองหาเกณฑ์มาตรฐานประสิทธิภาพและตรวจสอบสถานะสมาร์ทแล้ว; บอกว่ามีสุขภาพดีและไม่มีรายงานบล็อกที่ไม่ดี


1
คุณลอง? iozone.org
โพสิตรอน

1
แต่คุณไม่ได้ระบุว่าคุณใช้ระบบปฏิบัติการ / ฮาร์ดแวร์ระบบใดอยู่ SSD ได้รับรายงานว่าพบกับความเสียหายที่คุณกำลังพูดถึงในกล่อง Mac OS X บางรุ่นเมื่อกำหนดค่าให้ปิดฮาร์ดไดรฟ์บ่อยครั้งเพื่อประหยัดพลังงาน สิ่งนี้จะทำให้เกิดความเสียหาย ฉันคิดว่ามีโอกาสเหมือนกันในคอมโบของระบบปฏิบัติการ / ฮาร์ดแวร์อื่น ๆ หากไดรฟ์ถูกบังคับให้เข้าสู่โหมดสลีปผ่านพลังงานฮาร์ดไดรฟ์ที่ออกให้กับ SSD ฉันจะตรวจสอบการกำหนดค่าระบบของคุณก่อนที่จะเบิร์น SSD ด้วยการทดสอบไดรฟ์
Wing Tang Wong

1
@WingTangWong ว้าว ฉันพร้อมที่ SSD หลายตัวจะสกรูเมื่อพวกเขาสูญเสียพลังงาน แต่เมื่อถูกขอให้เข้าสู่โหมดสลีป นั่นคือไดรฟ์หนึ่งชิ้น ฉันจะจับตาดูสิ่งนี้ ฉันใช้ Linux และไม่ได้นอนยกเว้นบางทีเมื่อฉันหยุดระบบ ...
psusi

คำตอบ:


10

อาจจะ overkill แต่มีชุดทดสอบ Phoronix นอกจากนี้ยังมีเช่นเดียวกับbonnie++hdparm

ฉันมักจะใช้hdparmตัวอย่างเช่น:

% hdparm -Tt /dev/hdb
/dev/hdb:
 Timing buffer-cache reads:   128 MB in  1.25 seconds =102.40 MB/sec
 Timing buffered disk reads:  64 MB in 16.70 seconds =  3.83 MB/sec

ฉันจะไม่เรียกhdparmการทดสอบการทรมาน แต่ให้ความคิดคร่าวๆเกี่ยวกับประสิทธิภาพโดยรวมของไดรฟ์

การกำหนดความสมบูรณ์ของไดรฟ์

หลังจากที่คุณทรมานไดร์ฟคุณสามารถใช้คำสั่งนี้เพื่อตรวจสอบสภาพทั่วไปของไดรฟ์:

% sudo udisks --dump | grep -A 24 Updates
 Attribute       Current|Worst|Threshold  Status   Value       Type     Updates
===============================================================================
 raw-read-error-rate         103| 99| 34   good    5854752     Pre-fail Online 
 spin-up-time                100| 99|  0    n/a    0           Pre-fail Online 
 start-stop-count             98| 98| 20   good    2785        Old-age  Online 
 reallocated-sector-count    100|100| 36   good    0 sectors   Pre-fail Online 
 seek-error-rate              72| 60| 30   good    25872884688 Pre-fail Online 
 power-on-hours               89| 89|  0    n/a    424.4 days  Old-age  Online 
 spin-retry-count            100|100| 97   good    0           Pre-fail Online 
 power-cycle-count            98| 98| 20   good    2753        Old-age  Online 
 attribute-184               100|100| 99   good    0           Old-age  Online 
 reported-uncorrect          100|100|  0    n/a    0 sectors   Old-age  Online 
 attribute-188               100| 96|  0    n/a    0           Old-age  Online 
 high-fly-writes             100|100|  0    n/a    0           Old-age  Online 
 airflow-temperature-celsius  58| 42| 45 FAIL_PAST 42C / 108F  Old-age  Online 
 g-sense-error-rate          100|100|  0    n/a    124         Old-age  Online 
 power-off-retract-count     100|100|  0    n/a    15          Old-age  Online 
 load-cycle-count              1|  1|  0    n/a    248327      Old-age  Online 
 temperature-celsius-2        42| 58|  0    n/a    42C / 108F  Old-age  Online 
 hardware-ecc-recovered       45| 38|  0    n/a    5854752     Old-age  Online 
 reallocated-event-count      89| 89| 30   good    14877766723263 Pre-fail Online 
 current-pending-sector      100|100|  0    n/a    0 sectors   Old-age  Online 
 offline-uncorrectable       100|100|  0    n/a    0 sectors   Old-age  Offline
 udma-crc-error-count        200|200|  0    n/a    0           Old-age  Online 
 attribute-254               100|100|  0    n/a    0           Old-age  Online 

เครื่องมือดูแลสุขภาพ / การบำรุงรักษาดิสก์

เราประสบความสำเร็จในการใช้เครื่องมือ 2 อย่างต่อไปนี้ที่ฉันทำงาน HDAT2 & SpinRite หลังเป็นเครื่องมือเชิงพาณิชย์ แต่เดิม HDAT2 เป็นโครงการโอเพนซอร์ส

ต่อไปนี้เป็นภาพหน้าจอคู่ของ HDAT2:

ss # 1 HDAT2

ss # 2 HDAT2

คุณต้องรีบูทระบบของคุณเป็นทั้งสองอย่างดังนั้นจึงเป็นแบบออฟไลน์ในขณะที่คุณกำลังดำเนินการเหล่านี้ แต่ทั้งคู่มีไดรฟ์กู้คืนที่ล้มเหลวหรือเริ่มแสดงความล้มเหลว UI ใน HDAT2 ค่อนข้างคร่าวๆเพื่อนำทางโดยทั่วไปเราใช้ตัวเลือกเริ่มต้นเป็นส่วนใหญ่และพยายามไม่เดินไกลเกินไป


สามคนแรกที่คุณพูดถึงคือมาตรฐานประสิทธิภาพ ตรวจสอบสถานะ SMART แล้วและดีโดยไม่มีเซ็กเตอร์ที่ไม่ดีดังนั้นดูเหมือนว่า HDAT2 ไม่ใช่สิ่งที่ฉันกำลังมองหา
psusi

ฉันจะไม่ยกเลิก HDAT2 เราใช้ chkdsks และพวกเขาก็สะอาดเช่นกัน แต่ดิสก์ก็ยังไม่สามารถบูตได้การใช้ HDAT2 ก็สามารถค้นหาปัญหาพื้นผิวด้วยดิสก์ที่สามารถซ่อมแซมได้เพียงพอที่จะทำให้ไดรฟ์สามารถบูตได้
slm

ความคิดเห็นที่ล่าช้า แต่ฉันพยายามค้นหาซอร์สโค้ดไปยัง HDAT2 โดยไม่ประสบความสำเร็จ มีการเปลี่ยนแปลงสิทธิ์ใช้งานล่าสุดหรือไม่
i336_

4

bonnie ++ อยู่ในใจ:

ดังนั้นขึ้นอยู่กับการกำหนดค่าฮาร์ดแวร์ของกล่องของคุณ:

bonnie++ -d /path/to/mounted/ssd -r your-system-ram-size-in-MB

ตัวอย่าง:

# For a 32GB system with the SSD formatted and mounted at /mnt/mounted-ssd-001
bonnie++ -d /mnt/mounted-ssd-001 -r 32000

ควรให้อุปกรณ์ของคุณมีการทดสอบความเครียดที่ดี คุณสามารถปรับแต่งมันได้เช่นกัน

หมายเหตุด้วย SSD เมื่อมีการบล็อกที่ไม่ดีอาจได้รับการปรับปรุงใหม่โดยอัตโนมัติจากฮาร์ดแวร์ของไดรฟ์ขึ้นอยู่กับไดรฟ์ที่คุณกำลังทำงานด้วย นอกจากนี้การทดสอบการทรมานยังกินอยู่ในช่วงอายุการเขียนของ SSD อีกด้วย ดังนั้นใช้ดุลยพินิจของคุณเอง

แก้ไข:

การเพิ่มหมายเหตุเกี่ยวกับความล้มเหลวของ SSD เนื่องจากมีการชี้ให้เห็นว่า Bonnie ++ เน้นการทดสอบ แต่ไม่ได้ติดตามข้อผิดพลาด วิธี SSD "remap bad bad blocks" นั้นแตกต่างจากวิธีที่ฮาร์ดไดรฟ์ทำการแมปใหม่ วิธีการเกี่ยวกับมันขึ้นอยู่กับยี่ห้อ / ยี่ห้อ / รุ่นของ SSD ที่คุณมี:

  • SSD ราคาถูกล้มเหลวเนื่องจากไม่มีความสามารถสำรองที่จะทำการแมปใหม่หรือเนื่องจากไม่มีวิธีแยกบล็อกแฟลชที่ล้มเหลว พวกเขาจะแขวนหรือออฟไลน์และจะไม่กลับมาออนไลน์
  • Midrange SSD ที่ไม่มีความจุสำรองอาจสร้างการแจ้งเตือน Smartd หรืออาจสร้างข้อผิดพลาดของอุปกรณ์บล็อกระดับ OS เมื่อตรวจพบบล็อกที่ล้มเหลว อย่างไรก็ตามเมื่อเกิดความล้มเหลวขนาดที่ลงทะเบียนของ SSD จะเปลี่ยนไป สิ่งนี้อาจส่งผลให้เกิดข้อผิดพลาดและอุปกรณ์ที่ถูกออฟไลน์โดย OS หรืออาจทำให้อุปกรณ์หยุดทำงานและจำเป็นต้องดึงออกมาและใส่กลับเข้าไปใหม่เพื่อให้ได้รับการยอมรับอีกครั้ง เมื่อลงทะเบียนใหม่ขนาดบล็อกที่มีอยู่ของอุปกรณ์จะลดลง
  • SSD ระดับสูงที่มีความจุสำรองจะทำการแมปบล็อกที่ไม่ดีเบื้องหลังและอาจสร้างการแจ้งเตือน / คำเตือนระดับ OS เมื่อความจุสำรองหมดอุปกรณ์อาจจะล้มเหลวตามแนวของ Midrange SSD

เมื่อ SSD ปรับขนาดตัวเองเนื่องจากมีการแยกบล็อกเสียคุณอาจต้องทำสิ่งต่อไปนี้เพื่อฟื้นไดรฟ์หากเฟิร์มแวร์ของไดรฟ์ไม่ทำการอัพเดตที่เหมาะสมโดยอัตโนมัติ:

http://communities.intel.com/message/145676

เว้นแต่ว่าการทดสอบความเครียดและเครื่องมือบันทึกข้อผิดพลาดได้รับการออกแบบโดยเฉพาะกับ SSD (s) ในใจคุณเพียงแค่ใช้อายุการใช้งานของอุปกรณ์

แก้ไข:

จากข้อมูลจากคำตอบข้างต้นแนะนำให้เปลี่ยนสายเคเบิลให้ดีกว่าหรือเปลี่ยนไดรฟ์ (เปลี่ยน RMA / การรับประกัน) เนื่องจากข้อผิดพลาดระดับระบบไฟล์ประเภทนั้นไม่ปกติ

นอกจากนี้หากไดรฟ์ของคุณรองรับคุณสามารถเพิ่มจำนวนพื้นที่ที่สงวนไว้สำหรับการจัดการข้อผิดพลาด:

http://www.thomas-krenn.com/en/wiki/SSD_Over-provisioning_using_hdparm


นั่นเป็นเกณฑ์มาตรฐานประสิทธิภาพ อาจให้ไดรฟ์ออกกำลังกาย แต่ฉันไม่คิดว่าจะตรวจพบข้อผิดพลาด
psusi

วิธีการทำงานของ SSD การตรวจหาข้อผิดพลาดนั้นมาในหลายรูปแบบขึ้นอยู่กับยี่ห้อ / รุ่นของ SSD: ข้อผิดพลาด Smartd หากมีการบล็อกบล็อกใหม่และใช้ความจุสำรอง (ไม่มีข้อบกพร่อง) ความจุของอุปกรณ์คือ ลดลงเนื่องจากส่วนของการจัดเก็บข้อมูลแฟลชเป็นความผิดพลาด (อาจทำให้เกิดข้อผิดพลาด smartd สามารถทำให้เกิดข้อผิดพลาดของระบบไฟล์อาจทำให้อุปกรณ์แขวนรถบัสโดยออฟไลน์เมื่อดึง / ใส่กลับเข้าไปใหม่ไดรฟ์จะกลับมาใช้ได้อีกครั้ง ) และ SSD ก็สามารถปรากฏขึ้นเพื่อแขวนได้โดยไม่ต้องทำการแมปใหม่ (อุปกรณ์จะไม่ตอบสนองแม้หลังจากใส่เข้าไปใหม่) เส้นทางความล้มเหลวไม่เท่ากับ HD
Wing Tang Wong

1
ข้อผิดพลาดไม่ได้ตรวจพบโดยไดรฟ์ดังนั้นจึงจำเป็นต้องมีเครื่องมือทดสอบ มันแสดงให้เห็นตัวเองโดยระบบไฟล์ที่ถูกติดตั้งใหม่ ro และ e2fsck การค้นหาและแก้ไขข้อผิดพลาดจำนวนมากในเมตาดาต้า นอกจากนี้ฉันเคยมีไฟล์แพ็คที่เก็บ git ของฉันเสียหาย มันเป็นคอร์รัปชั่นเงียบ ๆ ที่อาจเกิดขึ้นทุกๆเดือนหรือสองครั้ง ตอนแรกฉันคิดว่ามันอาจเป็นข้อผิดพลาดที่เกี่ยวกับ TRIM เนื่องจากฉันจำไม่ได้ว่าเกิดเหตุการณ์นี้ขึ้นก่อนที่ฉันจะเปิดใช้งานดังนั้นฉันจึงปิดและยังคงเกิดขึ้นอยู่
psusi

ปัญหาที่อาจเกิดขึ้นสองสามประการ: สายเคเบิลไดรฟ์เสียหรือไดรฟ์เสีย คุณสามารถทดสอบสายเคเบิลของไดรฟ์ที่ไม่ดีได้โดยการเปลี่ยนสายเคเบิลใหม่ ฉันเคยมีสิ่งนี้ในอดีตและแทนที่ด้วยสายเคเบิล spec ที่ดีกว่าทำงานได้ ในกรณีของไดรฟ์ที่ไม่ดี RMA หรือส่งเพื่อซ่อมรับประกัน
Wing Tang Wong

1
ปัญหาคือการพิสูจน์ว่ามันเป็นไดรฟ์ที่ไม่ดี (หรือจริงๆข้อบกพร่องในเฟิร์มแวร์) และไม่ได้พูดว่าเป็นข้อผิดพลาดในเคอร์เนล หากเป็นสายเคเบิลที่ไม่ดีก็จะแสดงให้เห็นว่าเป็นข้อผิดพลาด sata ecc แทนที่จะเป็นความเสียหายที่เงียบแบบสุ่ม
psusi

3

ฉันเข้าใจว่านี่มีอายุเกินหนึ่งปี แต่เพื่อประโยชน์ของทุกคนที่อ่านเธรดในอนาคตฉันคาดว่าซอฟต์แวร์ที่คุณต้องการ (d) ยังไม่มีอยู่นอก HP Labs:

"การทำความเข้าใจความทนทานของ SSD ภายใต้ Power Fault" https://www.usenix.org/system/files/conference/fast13/fast13-fast13-final80.pdf

แทนที่การฉีดพลังงานผิดพลาดด้วยเหตุการณ์ที่เลือก (หรือไม่มีอะไรในกรณีของการตรวจจับข้อบกพร่องเฟิร์มแวร์เป็นระยะ ๆ ) และปรากฏว่าซอฟต์แวร์นี้จะตรวจจับได้ น่าเสียดายที่ฉันไม่คิดว่าจะมีทางเลือกอื่นอย่างใดอย่างหนึ่งที่ HP คาดไม่ถึงจะไม่ได้เขียนอะไรขึ้นมาเอง

มันเป็นความอัปยศเนื่องจากฉันต้องการบางสิ่งเช่นนี้เพื่อพิสูจน์ปัญหาในสภาพแวดล้อมเสมือน ที่ฉันสงสัยว่ามุ่งมั่นเขียนไม่ได้จริงทำให้ทางของพวกเขาไปยังดิสก์ทางกายภาพ มันจะเป็นการดีมากที่จะได้ทดสอบความเครียดของหน่วยความจำแบบนี้ไม่เพียง แต่จำเป็นต้องใช้ SSD ฉันยังไม่พบสิ่งที่เหมาะสม


2
(จากความคิดเห็นที่ไม่ระบุชื่อ) ในขณะที่สิ่งที่ด้านฮาร์ดแวร์จะต้องทำซ้ำฉันเห็นเหตุผลว่าทำไมส่วนการตรวจสอบซอฟต์แวร์ของกระดาษนั้นไม่สามารถทำซ้ำได้โดยใช้ fio ในโหมดไคลเอนต์ / เซิร์ฟเวอร์ด้วยทริกเกอร์ ดูgithub.com/axboe/fio/blob/master/HOWTO (การตรวจสอบ 10.0 และทริกเกอร์) สำหรับรายละเอียด fio สามารถทำขึ้นเพื่อใช้ I / O ที่ไม่มีบัฟเฟอร์หรือซิงโครไนซ์เป็นระยะในรูปแบบที่มีประโยชน์หลากหลายซึ่งสามารถตรวจสอบได้ในภายหลัง (เป็นไปได้ที่จะบันทึกไฟล์สถานะเพื่อให้การตรวจสอบสามารถเกิดขึ้นได้
Archemar

1

ใช้เครื่องมือทดสอบ maker เป็นวิธีที่ดีที่สุดในการทดสอบ HD เนื่องจากสามารถเข้าถึงการทดสอบระดับต่ำทำการแมปเซกเตอร์เสียทดสอบสถานะสุขภาพอัจฉริยะทั้งหมด (โดยเฉพาะสำหรับ SSD มีการลงทะเบียนจำนวนมากที่ไม่รู้จักสำหรับพวกเราส่วนใหญ่ แต่สามารถช่วยผู้ผลิตให้ดูสถานะฮาร์ดดิสก์)

hirensCD มีเครื่องมือทดสอบมากมาย แต่ฉันคิดว่ามันไม่ได้อัพเดตเป็น SSD ที่เปิดใช้งานดังนั้นให้ตรวจสอบเว็บไซต์ของผู้ผลิตโดยตรง บางตัวรองรับ Linux, อื่น ๆ อาจต้องใช้ windows liveCD (ตรวจสอบ hirenCd อีกครั้ง) หรือบูตจาก pendrive (ฟรี, ระบบปฏิบัติการพิเศษ, ฯลฯ )

เครื่องมือ HD ที่เก่ากว่าส่วนใหญ่ไม่ดีสำหรับการทดสอบ SSD เนื่องจากเซกเตอร์ไม่เคยอยู่ในสถานที่เดียวกันถูกแมปแบบไดนามิกโดยเฟิร์มแวร์เพื่อกระจายการเขียนทั่วไดรฟ์ ดังนั้นหากพวกเขาทำการทดสอบการเขียนคุณเพียงแค่เขียนรอบการเขียนแทนการทดสอบดิสก์อย่างแท้จริง

การทดสอบการอ่านไม่ได้เผา SSD แต่อาจไม่ได้ทดสอบทุกส่วนของ SSD เพราะเฟิร์มแวร์ซ่อนเค้าโครงจริง

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.