डेबियन जेसी पर apt-get के साथ अंक


1

पिछले हफ्ते हमारी वेब होस्ट डीडीओएस थी और उसके बाद, हमारे सर्वर में से एक को समस्याओं का सामना करना पड़ रहा है।

सर्वर डेबियन जेसी चलाता है, और हर बार जब मैं दौड़ने की कोशिश करता हूं apt-get update, मुझे निम्न त्रुटि मिलती है:

Reading package lists... Error!
E: Encountered a section with no Package: header
E: Problem with MergeList /var/lib/dpkg/status
E: The package lists or status file could not be parsed or opened.

सब कुछ मैंने पाया पता चलता है यह सामान्य रूप से या तो चल रहा द्वारा हल किया जा सकता sudo rm /var/lib/apt/lists/* -vfहै या sudo dpkg --configure -aपहले से, लेकिन न तो मेरे लिए काम कर रहा है। मैंने एक अलग दर्पण पर स्विच करने का भी प्रयास किया है, लेकिन यह समस्या को हल नहीं करता है।

कोई सुझाव, दोस्तों?


1
आपके त्रुटि संदेश का सीधा मतलब है कि आपकी स्थिति फ़ाइल दूषित हो गई है। आपको पहले इसे rm / var / lib / dpkg / स्टेटस को हटा देना चाहिए , फिर इसे फिर से बनाना, टच / var / lib / dpkg / स्टेटस , फिर अपडेट प्लस अपग्रेड करना होगा। यदि यह काम नहीं करता है, तो स्थिति फ़ाइल और उसके निर्देशिका ट्री दोनों की अनुमतियों और स्वामित्व की जांच करें।
MariusMatutiae

1
और, क्षमा करें, मैं भूल गया, बस यह सुनिश्चित कर लें कि डिस्क पर पर्याप्त जगह खाली है, आप कभी नहीं जानते हैं ....
MariusMatutiae

@MariusMatutiae ने इसे हल किया। बहुत बहुत धन्यवाद - इसे एक उत्तर में रखें और मैं इसे स्वीकार करूंगा।
मैटलबेड

जवाबों:


4

आपके त्रुटि संदेश का सीधा मतलब है कि आपकी स्थिति फ़ाइल दूषित हो गई है।

आपको पहले इसे हटा देना चाहिए,

rm /var/lib/dpkg/status

फिर इसे फिर से बनाएँ,

touch /var/lib/dpkg/status

फिर एक अपडेट प्लस एक अपग्रेड करें।

यदि यह काम नहीं करता है, तो स्थिति फ़ाइल और उसकी निर्देशिका ट्री दोनों की अनुमतियों और स्वामित्व की जांच करें, और, संभवतः, यह जांचें कि डिस्क भरी हुई है, तो आप कभी नहीं जानते ...


0

क्या आपके पास बैकअप है? किसी भी स्थिति में, अब /rootकी सामग्री में बैकअप करना शुरू /var/lib/dpkgकर सकते हैं (आप छोड़ सकते हैं info/, ताकि आप असफल प्रयास के मामले में वास्तविक स्थिति को पुनर्स्थापित कर सकें।

क्या आपके पास पर्याप्त डिस्क मुक्त है /var? (डीडीओएस को /varभरने, लॉग भरने के लिए करते हैं )।

उपरोक्त दो जांचों के बाद, -oldफ़ाइलों को एक ही फ़ाइल में कॉपी करने की कोशिश करें लेकिन प्रत्यय के बिना -old। (यदि आपके पास बैकअप है, तो बस इन फ़ाइलों को बैकअप से कॉपी करें)।


0
  1. पुनर्प्राप्त पैकेज फ़ाइलों के स्थानीय भंडार को साफ़ करें। टर्मिनल खोलें और टाइप करें:

    sudo apt-get clean
    
  2. अपने सिस्टम को बताएं कि प्रत्येक संग्रह से सॉफ़्टवेयर की नवीनतम सूची को नीचे खींचना चाहिए जिसके बारे में वह जानता है।

    sudo apt-get update
    
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.