टूटी हुई सिनैप्टिक अपडेट को कैसे ठीक करें: "पैकेज बहुत खराब असंगत स्थिति में है"


15

मेरे पास एक डेल मिनी 9 उबंटू 8.10 है। एक दिन मेरे पास यह देखने के लिए उज्ज्वल विचार था कि क्या मैं एक एलएएमपी स्टैक स्थापित कर सकता हूं। मुझे MySQL 5.0 को स्थापित करने में परेशानी हुई। मुझे त्रुटि याद नहीं है, लेकिन जब से अपडेट-मैनेजर, सिनैप्टिक, या एप्ट-रन को चलाने के सभी प्रयास mysql-server-5.0 के बारे में एक त्रुटि के साथ विफल हो जाते हैं: "पैकेज बहुत खराब असंगत स्थिति में है"।

मैंने कोशिश की है apt-get remove mysql-server-5.0और यह भी installलेकिन कोई भाग्य के साथ। नीचे एक ही त्रुटि के साथ दोनों विफल। मैं इसे कैसे ठीक करूं?

$ sudo apt-get remove mysql-server-5.0
पैकेज सूची पढ़ना ... पूरा हो गया
निर्भरता का पेड़       
राज्य की जानकारी पढ़ रहे हैं ... किया
निम्नलिखित पैकेज स्वचालित रूप से स्थापित किए गए थे और अब आवश्यक नहीं हैं:
  dhcdbd libisc32
इन्हें हटाने के लिए Use apt-get autoremove ’का उपयोग करें।
निम्नलिखित पैकेज याद किए जाएंगे:
  mysql-server-5.0
0 अपग्रेड किया गया, 0 नव स्थापित, 1 हटाने के लिए और 164 अपग्रेड नहीं।
1 पूरी तरह से स्थापित या हटाया नहीं गया।
इस ऑपरेशन के बाद, 85.4MB डिस्क स्थान मुक्त हो जाएगा।
क्या आप जारी रखना चाहते हैं [Y / n]? 
dpkg: त्रुटि प्रसंस्करण mysql-server-5.0 (--remove):
 पैकेज बहुत खराब असंगत स्थिति में है - आपको चाहिए
 हटाने का प्रयास करने से पहले इसे पुनर्स्थापित करें।
प्रसंस्करण करते समय त्रुटियों का सामना किया गया था:
 mysql-server-5.0
E: उप-प्रक्रिया / usr / bin / dpkg ने एक त्रुटि कोड लौटाया (1)

स्क्रीन आउटपुट के लिए <pre> जहां सिंटैक्स हाइलाइटिंग की आवश्यकता नहीं है, का उपयोग करने पर विचार करें।
जॉन ऑक्सले

जवाबों:


19

मेरे लिए मावरिक पर अन्य किसी भी उत्तर ने काम नहीं किया।

मेरे मामले में, मुझे यह काम मिला:

sudo rm /var/lib/dpkg/info/flashplugin-nonfree.prerm

sudo dpkg --remove --force-remove-reinstreq flashplugin-nonfree

(टूटे हुए पैकेज के नाम के साथ "फ्लैशप्लगिन-नॉनफ्री" की जगह, और स्क्रिप्ट के प्रकार के साथ "प्रर्म" को बदलना जो विफल रहा - मेरे मामले में यह "पोस्ट्रम" था, पोस्ट-रिमूवल स्क्रिप्ट।)

और वे कहते हैं कि उबंटू का उपयोग करना आसान है !! बड़बड़ाना


- अपच टूटे हुए डिप्स को छोड़ने के लिए बेहतर है
स्टेपेंचग

1
मैं इसी तरह की समस्या के समाधान के लिए घंटों खोज रहा हूं, और यह एकमात्र ऐसा काम है। धन्यवाद।
ल्यूकगेट

6

मैं एक mysql स्थापित के साथ एक ही मुद्दा था। आपको पैग को शुद्ध करने की आवश्यकता है। बस एक पैकेज को हटाने से इसके साथ आने वाली कॉन्फ़िगरेशन फ़ाइलों को नहीं हटाया जाता है।

इसके अलावा, मैं mysql-server-5.0 का उल्लेख करने जा रहा हूं , लेकिन यह महसूस करें कि एक रैपर पैकेज mysql-server है जो हमेशा नवीनतम संस्करण की ओर इशारा करता है। यदि आप mysql-server को स्थापित करने के लिए कहते हैं , तो apt-get आपको यह बताना चाहिए कि यह mysql-server-5.0 पर निर्भर करता है और दोनों को स्थापित करता है। यदि आपके पास सिस्टम पर mysql-server पैकेज है, तो आपको यह सुनिश्चित करना चाहिए कि आप पुनः स्थापित करने का प्रयास करने से पहले ही चले गए हैं।

  • सुनिश्चित करें कि mysql सर्वर (mysqld) नहीं चल रहा है। यदि यह है, तो इसे नीचे लाओ:

    sudo /etc/init.d/mysqld stop

  • जांचें कि क्या कोई पैकेज mysql-server-5.0 पर निर्भर करता है:

    sudo apt-cache rsepends mysql-server-5.0

    यदि वे करते हैं, तो आपको स्थापना रद्द करने के लिए --force विकल्प का उपयोग करना होगा ।

  • पैकेज को शुद्ध करें ( # 2 के आधार पर --फोर्स विकल्प को शामिल करें )

    sudo apt-get --purge remove --force mysql-server-5.0

  • सुनिश्चित करें कि इंस्टॉलर फ़ाइलों को चलाकर भी साफ़ किया जाता है

    sudo apt-get autoclean
    sudo apt-get ऑटोरेमोव

  • सर्वर पैकेज को फिर से स्थापित करें

    sudo apt-get install mysql-server-5.0

यह उम्मीद है कि आपकी समस्या को ठीक करना चाहिए। हालाँकि, पैकेज अभी भी टूट सकता है, अगर आपने mysql-common पैकेज से आने वाली फ़ाइलों में कोई बदलाव किया है ।

mysql-common क्लाइंट और सर्वर दोनों घटकों द्वारा उपयोग किया जाने वाला आधार पैकेज है। यदि चीजें अभी भी काम नहीं कर रही हैं, तो इस पैकेज को फिर से स्थापित करने का प्रयास करें। निश्चित रूप से ऐसे पैकेज होंगे जो इस पर निर्भर करते हैं; ऊपर # 2 का उपयोग कर की जाँच करें। Mysql-common को पुनर्स्थापित करने से पहले mysql-server को शुद्ध करें । इसके अलावा, mysql-common को फिर से स्थापित करने के लिए मत भूलना , अन्यथा आपका सिस्टम बहुत टूट जाएगा।


1

आप aptitudeएक कोशिश देना चाहते हैं , जिसमें निर्भरता की बेहतर व्यवस्था हो सकती है:

sudo aptitude remove mysql-server-5.0

यहाँ त्रुटि है dpkg, इसलिए मुझे नहीं लगता aptitudeकि जरूरी कोई बेहतर किराया होगा। मुझे गलत मत समझो, मैं सब aptitudeखत्म हो गया हूं apt-get, लेकिन दिन के अंत में, वे दोनों असली नट्टी-किरकिरा को सौंप देते हैं dpkg(जिसे सुनकर आपको खुशी होगी मूल रूप से पर्ल में लागू किया गया था)।
टेलीमेकस

;-) मुझे लगा कि यह एक कोशिश के काबिल हो सकता है।
इन्ना

0

प्रयत्न

sudo dpkg -i reconfigure mysql-server-5.0
sudo apt-get remove --force mysql-server-5.0

यदि इसका दूसरा पैकेज टूट गया है, तो apt-get remove --forceउस पैकेज को भी आज़माएं ।


0

आपके द्वारा की गई dpkgत्रुटि बताती है कि समस्या तब होती है जब dpkgवास्तव में पैकेज को हटाने की कोशिश की जाती है। (दिन के अंत में, apt-getऔर Synapticवास्तविक काम से हाथ मिलाना dpkg।)

क्या आपने वास्तव में वह करने की कोशिश की है जो संदेश कहता है और पहले पुनः- स्थापना कर रहा है ?

apt-get install --reinstall mysql-server-5.0

के रूप में मूर्खतापूर्ण के रूप में यह लग सकता है, अगर dpkgहटाने की प्रक्रिया के दौरान घुट रहा है (क्योंकि इसे हटाने के लिए माना जाता है कि कुछ फ़ाइल अंतरिम में गायब हो गई है) तो पुनः स्थापित करना और फिर निकालना कभी-कभी मदद कर सकता है। सुनिश्चित करें कि mysqlइससे पहले कि आप इसे स्थापित करने या हटाने की कोशिश नहीं कर रहे हैं, जैसा कि नगुल सुझाव देता है


0

dpkg -r --force-remove-reinstreq <package> बिना जाँच के एक पैकेज को हटा देता है अगर इसे पुनः स्थापित करने की आवश्यकता हो।

उसके बाद आपको अपने पसंदीदा पैकेज मैनेजर के साथ पैकेज को फिर से स्थापित करने में सक्षम होना चाहिए।


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