बैडब्लॉक आउटपुट की व्याख्या कैसे करें


43

बैडब्लॉक के मैन पेज इस बात का उल्लेख नहीं करते हैं कि विशेष रूप से आउटपुट में तीन नंबर क्या हैं:

पूरा हुआ, 7 ख़राब ब्लॉक मिले (7/0/0 त्रुटियाँ)
पूरा हुआ, 120 ख़राब ब्लॉक मिले (0/0/120 त्रुटियाँ)

मैं अनुमान लगा रहा हूं कि "पढ़ने / लिखने / तुलना करने के दौरान त्रुटियां"। क्या कोई मुझे बता सकता है?

जवाबों:


45

आपका अनुमान सही है।

स्रोत कोड इस तरह दिखता है:

if (v_flag)
    fprintf(stderr,
            _("Pass completed, %u bad blocks found. (%d/%d/%d errors)\n"),
            bb_count, num_read_errors, num_write_errors, num_corruption_errors);

तो इसके पढ़ने / लिखने / भ्रष्टाचार की त्रुटियां। और भ्रष्टाचार का मतलब पहले लिखे गए आंकड़ों से तुलना करना है:

if (t_flag) {
    /* test the comparison between all the
       blocks successfully read  */
    int i;
    for (i = 0; i < got; ++i)
        if (memcmp (blkbuf+i*block_size,
            blkbuf+blocks_at_once*block_size,
            block_size))
            bb_count += bb_output(currently_testing + i, CORRUPTION_ERROR);
}

उत्तम। स्रोत में इसे देखने से एक चीज जो मुझे होनी चाहिए थी, लेकिन किसी तरह यह नहीं हुआ। धन्यवाद। :)
टॉमालक

बेशक, यही कारण है कि (0/0/120 errors)मामले में कोई कर्नेल त्रुटि संदेश नहीं हैं ।
तोमलक

भ्रष्टाचार त्रुटियों के लिए एक संभावित कारण यह है कि कुछ और डिस्क पर लिखा badblocksगया था, जो चल रहा था, उस स्थिति में यह बिल्कुल भी त्रुटि नहीं होगी (उपयोगकर्ता त्रुटि के अलावा)।
२०:३३ बजे

इस मामले में यह एक संदिग्ध डिस्क है जिसका मैं विशेष रूप से बैडब्लॉक के साथ उपयोग कर रहा हूं। कोई अन्य प्रक्रिया इसे नहीं लिखती है। क्या खराब क्षेत्र सूची के साथ आउटपुट फ़ाइल की कल्पना करने का एक तरीका है, मैन्युअल रूप से उनकी स्थिति की गणना करना?
तोमलक

-8

गलत। यदि बैडब्लॉक कुछ भी कहता है जो "कोई त्रुटि नहीं मिली है", तो इसका मतलब है:

  • मशीन को तुरंत बंद करें
  • एक प्रतिस्थापन डिस्क प्राप्त करें
  • $ GOD_OF_BACKUPS के लिए प्रार्थना करना महत्वपूर्ण डेटा सुरक्षित है
  • नई डिस्क को सेट करने के लिए जो भी आवश्यक हो, करें और पुराने से डेटा कॉपी करें

आप वैकल्पिक रूप से मनोरंजन के लिए या पेपरवेट के रूप में डिस्क को वैकल्पिक रूप से रख सकते हैं।

(आधुनिक डिस्क के रूप में वहाँ कोई रास्ता नहीं उनके बिना डिस्क निर्माण करने के लिए है, और उन खूनी नरक चिल्लाया जब वे बुरा ब्लॉक सूची को देखा, बुरा ब्लॉक remapping के लिए अतिरिक्त सिलेंडरों का एक सेट है। बुरा ब्लॉक तो करते दिखाई दें, तो इसका मतलब है कि अंतरिक्ष कि का उपयोग किया जाता है। घूर्णन डिस्क के सामान्य विफलता मोड खराब ब्लॉकों की तेजी से बढ़ती संख्या देते हैं, कुछ को देखने का मतलब है कि डिस्क में आमतौर पर कुछ घंटे बचे हैं।)


10
यह सवाल भी नहीं था।
तोमलक

1
कभी badblocksउस डिस्क पर न चलें, जिस पर महत्वपूर्ण डेटा हो। यदि डिस्क में कोई त्रुटि badblocksहै, तो nondestructive लेखन मोड में भी अतिरिक्त नुकसान हो सकता है, यदि यह त्रुटि के कारण मूल डेटा वापस नहीं लिख सकता है।
ठंढकुट्ज़

@frostschutz, -nपरीक्षण केवल-पढ़ने के लिए माना जाता है?
वॉनब्रांड

3
नहीं, -nनोंक-झोंक वाला लेखन है। इसलिए यह लिखता है, लेकिन परीक्षण के बाद मूल डेटा को पुनर्स्थापित करता है। जो त्रुटियों के कारण विफल हो सकते हैं। आसानी से badblocks, मेरा मानना ​​है कि आप बिना किसी विकल्प का उपयोग करते हैं।
२०:३३

बुरी सलाह नहीं, लेकिन सवाल फिट नहीं बैठता। आप इसमें से एक प्रश्नोत्तर शैली का उत्तर दे सकते थे।
neverMind9
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.