मेरे पास एक ड्राइव है जो रिपोर्ट कर रही है कि वर्तमान लंबित सेक्टर "45" है। मैंने क्षेत्रों की पहचान करने के लिए बैडब्लॉक का उपयोग किया है और मैं उन्हें dd के साथ शून्य लिखने की कोशिश कर रहा हूं ।
मैं जो समझता हूं, जब मैं खराब क्षेत्रों में सीधे डेटा लिखने का प्रयास करता हूं, तो इसे एक वास्तविक आवंटन को ट्रिगर करना चाहिए, वर्तमान लंबित क्षेत्रों को एक से कम करना चाहिए और वास्तविक क्षेत्र की गिनती में वृद्धि करना चाहिए।
हालाँकि, इस डिस्क पर Reallocated_Sector_Ct और Reallocated_Event_Count कच्चे मान दोनों हैं, और जब मैं बुरे क्षेत्रों में शून्य लिखने का प्रयास करता हूं तो I / O त्रुटियों के साथ dd विफल रहता है। dd ठीक काम करता है, हालाँकि, जब मैं एक अच्छे क्षेत्र में लिखता हूँ।
# dd if=/dev/zero of=/dev/sdb bs=512 count=1 seek=217152
dd: error writing ‘/dev/sdb’: Input/output error
क्या इसका मतलब यह है कि मेरी ड्राइव, किसी भी तरह से, वास्तविक उपयोग के लिए कोई अतिरिक्त क्षेत्र नहीं है? क्या मेरा ड्राइव सामान्य रूप से एक भयानक व्यक्ति है? (ड्राइव वास्तव में मेरी नहीं है, मैं एक दोस्त की मदद कर रहा हूं। उन्हें सिर्फ एक सस्ती ड्राइव या कुछ और मिल सकता है।)
मामले में यह प्रासंगिक है, यहाँ smartctl -i का आउटपुट है :
Model Family: Western Digital Caviar Green (AF)
Device Model: WDC WD15EARS-00Z5B1
Serial Number: WD-WMAVU3027748
LU WWN Device Id: 5 0014ee 25998d213
Firmware Version: 80.00A80
User Capacity: 1,500,301,910,016 bytes [1.50 TB]
Sector Size: 512 bytes logical/physical
Device is: In smartctl database [for details use: -P show]
ATA Version is: ATA8-ACS (minor revision not indicated)
SATA Version is: SATA 2.6, 3.0 Gb/s
Local Time is: Fri Oct 18 17:47:29 2013 CDT
SMART support is: Available - device has SMART capability.
SMART support is: Enabled
अद्यतन:
मैंने shred
डिस्क पर चलाया है , जिससे करंट_पेंडिंग_सेक्टर शून्य हो गया है। हालाँकि, Reallocated_Sector_Ct और Reallocated_Event_Count अभी भी शून्य हैं, और dd अब उन सेक्टरों को डेटा लिखने में सक्षम है जो पहले असमर्थ थे। यह मुझे कई अन्य सवालों के साथ ले जाता है:
डिस्क द्वारा रिकॉल क्यों नहीं किए जा रहे हैं? मैं मान रहा हूं कि अब मैं इस क्षेत्र में सीधे डेटा लिख सकता हूं और पहले नहीं कर सकता था।
क्यों बिखरना वास्तविक कारण नहीं था और dd नहीं था? क्या तथ्य यह है कि श्रेड सिर्फ शून्य के बजाय यादृच्छिक डेटा लिखता है एक फर्क पड़ता है?
Uncorrectable Sector Count
शून्य से ज्यादा?