आप "हश सम मिसमैच" के लिए उपयुक्त अपडेट कैसे प्राप्त करते हैं


23

मेरे पास एक उबंटू 12.04 वर्चुअल बॉक्स वीएम है जिसे मैं वैग्रैंट का उपयोग करके तुरंत लिखता हूं।

git clone https://github.com/spuder/puppet-gitlab
vagrant up

जैसे ही योनि बॉक्स चलता है apt-get update, मुझे निम्नलिखित त्रुटि मिलती है।

...
W: Failed to fetch gzip:/var/lib/apt/lists/partial/apt.puppetlabs.com_dists_precise_main_binary-amd64_Packages  Hash Sum mismatch
W: Failed to fetch gzip:/var/lib/apt/lists/partial/apt.puppetlabs.com_dists_precise_main_binary-i386_Packages  Hash Sum mismatch
W: Failed to fetch gzip:/var/lib/apt/lists/partial/apt.puppetlabs.com_dists_precise_dependencies_binary-i386_Packages  Hash Sum mismatch
W: Failed to fetch http://br.archive.ubuntu.com/ubuntu/dists/precise-updates/restricted/binary-i386/Packages  404  Not Found

चीजें जो मैंने इस त्रुटि के आसपास काम करने की कोशिश की हैं।

  • ' Http://www.vagrantbox.es ' से 3 अलग ubuntu 12.04 बक्से का इस्तेमाल किया
  • समाधान यहाँ सुझाया गया है :

    sudo rm -rf / var / lib / apt / सूचियाँ / *
    sudo apt-get update
    sudo apt-get clean

  • कठपुतली प्रयोगशाला के पैकेजों को हटा दिया और पढ़ा

मैंने ऐसे ही सुझावों की भी कोशिश की है जो मुझे Google के पहले कुछ पन्नों में मिले हैं। मैंने कई कंप्यूटर, और कई इंटरनेट कनेक्शन भी आज़माए हैं।

तथ्य यह है कि यह कई इंटरनेट कनेक्शन पर कई ubuntu vm को प्रभावित किया है मुझे लगता है कि वहाँ ubuntu रेपो के साथ कुछ गड़बड़ है।

मैं इस मुद्दे को कैसे ठीक करने की कोशिश कर सकता हूं?

अद्यतन करें

मैंने '/ var / lib / apt / सूचियों / आंशिक' को साफ करने और apt-get clean को चलाने की कोशिश की, फिर यहां दिए गए अमेजन दर्पणों का उपयोग करके / etc / source / list में स्रोतों को प्रतिस्थापित किया :

मुझे अभी भी इसी तरह की त्रुटि मिलती है

Fetched 18.9 MB in 10s (1,865 kB/s)                                                                                                                                                                            
W: Failed to fetch bzip2:/var/lib/apt/lists/partial/us-west-1.ec2.archive.ubuntu.com_ubuntu_dists_precise_main_binary-amd64_Packages  Hash Sum mismatch
W: Failed to fetch bzip2:/var/lib/apt/lists/partial/us-west-1.ec2.archive.ubuntu.com_ubuntu_dists_precise_universe_binary-amd64_Packages  Hash Sum mismatch
W: Failed to fetch bzip2:/var/lib/apt/lists/partial/us-west-1.ec2.archive.ubuntu.com_ubuntu_dists_precise_multiverse_binary-amd64_Packages  Hash Sum mismatch
W: Failed to fetch bzip2:/var/lib/apt/lists/partial/us-west-1.ec2.archive.ubuntu.com_ubuntu_dists_precise_main_binary-i386_Packages  Hash Sum mismatch
E: Some index files failed to download. They have been ignored, or old ones used instead.

Update2

मेरे घर पर 2 इंटरनेट कनेक्शन हैं, दोनों ने एक ही त्रुटि दी। जैसे ही मैं अपने लैपटॉप को अपने काम के इंटरनेट कनेक्शन पर ले गया, समस्या दूर हो गई।

मैं अब भी यह समझने के लिए उत्सुक हूं कि मेरे इंटरनेट कनेक्शन से कोई फर्क क्यों पड़ेगा।

Update3

स्पष्टीकरण के लिए नीचे मेरा जवाब देखें। मेरा इंटरनेट फ़िल्टर डाउनलोड को दूषित कर रहा था।

मैं सवाल का जवाब दूंगा क्योंकि अभी तक कोई जवाब नहीं है।

क्या हश सम मिसमैच को ओवर-गेट में ओवरराइड करने का एक तरीका है?


क्या आपने यहाँ सुझाए अनुसार कैश साफ़ किया है ?
कीवी

क्या आपके डिस्ट्रो में apt-cacher NG भी शामिल है? क्योंकि यह अविश्वसनीय लगता है
किवी

मैं उस ब्लॉग पर आया, और मैंने सत्यापित किया कि apt-cache-ng स्थापित नहीं है। समस्या तब चली गई जब मैंने एक अलग इंटरनेट कनेक्शन पर एक अलग हाइपरवाइज़र की कोशिश की।
चंचल

शायद एक हाइपरविजर पर एक विशिष्ट हैश का टूटा हुआ कार्यान्वयन, लेकिन यह अभी भी बहुत अजीब है।
कीवी

आपके समाधान ने भी मेरे लिए काम किया। मैं AWS पर होस्ट किए गए एक TinyProxy सर्वर के माध्यम से चल रहा था और कुछ विज्ञापन फ़िल्टर सेटअप था। एक बार जब मैंने apt.conf में प्रॉक्सी से छुटकारा पा लिया, तो सब कुछ ठीक है।

जवाबों:


20

सबसे पहले, आपको यह समझना चाहिए कि हैश राशि बेमेल त्रुटियां क्यों होती हैं। सामान्य तौर पर, 2 कारण हैं:

सबसे पहले, कुछ उपयुक्त भंडार LZMA (.xz) संपीड़ित मेटाडेटा का उपयोग करते हैं। संस्करण 1.0 से पहले उपयुक्त हैश LZMA अभिलेखागार को सही (कभी-कभी) हैश राशि बेमेल त्रुटि देने में विफल रहता है।

इसके लिए दो काम हैं:

  1. अपने उपयुक्त ग्राहक को बताएं कि XZ संपीड़ित मेटाडेटा का उपयोग न करें
  2. 1.0 से नए संस्करण में अपने सिस्टम पर अपग्रेड अपग्रेड करें

इस ब्लॉग पोस्ट की जाँच करें मैंने इस मुद्दे के बारे में लिखा है जो दोनों कामों को अधिक विस्तार से बताता है।

दूसरे, APT रिपॉजिटरी स्वाभाविक रूप से विरल हैं । वास्तविक APT मेटाडेटा छोटी गाड़ी है और इसका डिज़ाइन उपयुक्त ग्राहकों के लिए रिपॉजिटरी मेटाडेटा को एक सुसंगत तरीके से डाउनलोड करने के लिए असंभव बनाता है अगर apt-get updateऐसा होता है जब रिपॉजिटरी को अपडेट किया जा रहा है।

इसके लिए दो काम हैं:

  1. एपीटी के एक नए संस्करण में अपग्रेड करें और सुनिश्चित करें कि आपके द्वारा बनाए गए भंडार (या उपयोग करना चाहते हैं) एक्वायर-बाय-हैश सुविधा का समर्थन करता है । यह समस्या को इसके मूल में ठीक करता है, लेकिन कुछ मामलों में संभव नहीं है यदि आप भंडार को नियंत्रित नहीं करते हैं।
  2. आप अपने सिस्टम पर कैश्ड मेटाडेटा हटा सकते हैं और पुनः प्रयास कर सकते हैं। ऐसा करने के लिए, पहली बार चलाने apt-get cleanके बाद rm -rf /var/lib/apt/lists/*। अगला, भागो apt-get update। यह सभी मेटाडेटा को फिर से डाउनलोड करेगा। यदि आप जिस रिपॉजिटरी से जुड़ने की कोशिश कर रहे हैं apt-get update, वह आपके चलते हुए खुद को अपडेट नहीं करने के लिए है , तो आप ठीक हो जाएंगे। अन्यथा, आपको इसे फिर से करना होगा।

यह एकमात्र समाधान है जो मेरे लिए काम करता है! ब्लॉग पोस्ट के लिए धन्यवाद
आमिर उवल

आपने टिप्पणी की कि उपयुक्त बेहतर नवीनतम संस्करण होगा। क्या आप मुझे बता सकते हैं कि इसे कैसे अपडेट किया जाए?
अमीर उवाल

वास्तव में आप Acquire-by-hash सुविधा का उपयोग कैसे करते हैं? मैंने इसके बारे में ब्लॉग देखा है, लेकिन वे यह नहीं कहते कि इसे किस फ़ाइल में डालना है और वे एक उदाहरण नहीं दिखाते हैं।
LINUX G33NYUS

6

पता लगा लिया।

मेरे दो कंप्यूटर हर तरह से समान हैं सिवाय मेरे व्यक्तिगत कंप्यूटर पर मैंने एक इंटरनेट फ़िल्टर स्थापित किया है।

K9 इंटरनेट फ़िल्टर ने एक कर्नेल एक्सटेंशन स्थापित किया है जो स्पष्ट रूप से ट्रैफ़िक के साथ खिलवाड़ करता है।

जैसे ही मैंने फ़िल्टर की स्थापना रद्द की, समस्या दूर हो गई।

मैं अभी भी शोध कर रहा हूं कि क्या apt-get updateहैश के रूप में हैम बेमेल को अनदेखा करने का कोई तरीका है ।


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

हाँ, लेकिन मैं यह कैसे कर सकता हूं (फ़िल्टर को हटा दें), क्योंकि मुझे आपकी एक ही समस्या है, लेकिन किसी भी तरह से अभी भी

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