पीपीए जोड़ने के बाद मैं असमान निर्भरता को कैसे हल करूं?

कभी-कभी, जब मैं सामान स्थापित कर रहा होता हूं, तो मुझे निम्न की तरह एक त्रुटि मिलती है:

Some packages could not be installed. This may mean that you haverequested an impossible situation or if you are using the unstabledistribution that some required packages have not yet been createdor been moved out of Incoming.The following information may help to resolve the situation:The following packages have unmet dependencies: package1 : Depends: package2 (>= 1.8) but 1.7.5-1ubuntu1 is to be installedE: Unable to correct problems, you have held broken packages.

मैं इसे कैसे हल कर सकता हूं?

एपीटी डेबियन और इसके आधार पर अन्य लिनक्स वितरण के लिए एक पैकेज प्रबंधन प्रणाली है, जैसे उबंटू । अधिकांश भाग के लिए, पैकेज को स्थापित करने, हटाने और अपडेट करने के लिए उपयुक्त का उपयोग करना आसान है । दुर्लभ उदाहरणों में, अक्सर जब आप तीसरे पक्ष की निर्भरता में मिश्रण कर रहे होते हैं, तो एक मौका होता है apt-get अंत में आपको यह बताने में त्रुटि हो सकती है कि पैकेज इंस्टॉलेशन पूरा नहीं हो सका ।

समाधान:

कॉन्फ़िगरेशन फ़ाइलों का बैकअप लेना हमेशा एक अच्छा विचार है जैसे /etc/apt/sources.list, ताकि जरूरत पड़ने पर आप परिवर्तनों को वापस कर सकें ।

  • अगर द error कुछ इस तरह दिखाता है:

    <some-package>: Depends: <other-package> (= version) but this-version is to be installed

    फिर सुनिश्चित करें कि restricted और universe रिपॉजिटरी सक्षम हैं । मारो Alt+F2, प्रकार software-properties-gtk और मारा Enter.

    के तहत Ubuntu Software टैब, सभी रिपॉजिटरी को सक्षम करें ।

  • अनमेट निर्भरता का एक संभावित कारण दूषित पैकेज डेटाबेस हो सकता है, और/या कुछ पैकेज ठीक से स्थापित नहीं किए गए थे । इस समस्या को ठीक करने के लिए, हिट करें Alt+Ctrl+T टर्मिनल खोलने के लिए और निम्न में से किसी एक कमांड को चलाने का प्रयास करें:

    उपयुक्त sudo-मिल को साफ

    या,

    उपयुक्त sudo-मिल autoclean

    apt-get clean पुनर्प्राप्त पैकेज फ़ाइलों के स्थानीय भंडार को साफ़ करता है ( । deb फाइलें). यह सब कुछ हटा देता है लेकिन लॉक फ़ाइल /वर/कैश/एपीटी/अभिलेखागार/ और /वार/कैश/एपीटी/अभिलेखागार/आंशिक/से । apt-get autoclean पुनर्प्राप्त पैकेज फ़ाइलों के स्थानीय भंडार को साफ़ करता है, लेकिन इसके विपरीत apt-get clean, यह केवल उन पैकेज फ़ाइलों को हटाता है जिन्हें अब डाउनलोड नहीं किया जा सकता है, और काफी हद तक बेकार हैं ।

  • निर्भरता समस्याओं को हल करने के लिए सबसे बुनियादी सुधारों में से एक चलाना है:

    उपयुक्त sudo-मिल स्थापित f

    -f यहाँ "फिक्स ब्रोकन"के लिए खड़ा है । Apt टूटी हुई निर्भरता को ठीक करने का प्रयास करेगा । यदि आपने मैन्युअल रूप से एक पैकेज स्थापित किया है जिसमें असमान निर्भरताएं थीं, apt-get यदि संभव हो तो उन निर्भरताओं को स्थापित करेगा, अन्यथा यह समस्या को हल करने के लिए आपके द्वारा स्थापित पैकेज को हटा सकता है ।

    फिर भागो:

    sudo dpkg-कॉन्फ़िगर -एक

    फिर इसे फिर से चलाएं:

    उपयुक्त sudo-मिल स्थापित f

    यदि आउटपुट है:

    0 upgraded, 0 newly installed, 0 to remove and 1 not upgraded.

    इसका मतलब है कि यह विफल रहा ।

  • अगला समाधान चलाना है:

    उपयुक्त sudo-मिल -u, जिला-उन्नयन

    यदि यह कोई आयोजित पैकेज दिखाता है, तो उन्हें खत्म करना सबसे अच्छा है । निर्भरता संघर्षों के कारण पैकेज आयोजित किए जाते हैं apt हल नहीं कर सकता । संघर्षों को खोजने और सुधारने के लिए इस आदेश का प्रयास करें:

    सुडो एपीटी-गेट-ओ डीबग:: पीकेजीप्रोलेमरेसोल्वर=हां डिस्ट-अपग्रेड

    यदि यह संघर्षों को ठीक नहीं कर सकता है, तो यह बाहर निकल जाएगा:

    0 upgraded, 0 newly installed, 0 to remove and 6 not upgraded.

    एक-एक करके आयोजित पैकेजों को हटाएं, चल रहा है dist-upgrade हर बार, जब तक कोई और आयोजित पैकेज नहीं होते । फिर किसी भी आवश्यक पैकेज को पुनर्स्थापित करें । का उपयोग सुनिश्चित करें --dry-run विकल्प, ताकि आपको परिणामों की पूरी जानकारी हो:

    सूडो एपीटी-गेट रिमूव-ड्राई-रन पैकेज-नाम

    चूंकि आप जिस पैकेज को स्थापित करने का प्रयास कर रहे हैं उसे हटाना आदर्श नहीं हो सकता है, आप एक रिपॉजिटरी खोजने का भी प्रयास कर सकते हैं जिसमें निर्भरताओं को पूरा करने के लिए आवश्यक पैकेज हैं ।

अंत में, यदि अन्य सभी विफल हो जाते हैं, तो आप आवश्यक पैकेजों को खोजने और स्थापित करके, या उन्हें स्रोत से स्थापित करके और फिर बनाकर, निर्भरता को स्वयं संतुष्ट करने का प्रयास कर सकते हैं "के रूप में"उनके लिए पैकेज।

पीपीए को अक्षम / निकालें / शुद्ध करें:

पीपीए (पर्सनल पैकेज आर्काइव) पर होस्ट किए गए रिपॉजिटरी हैं Launchpad. आप पीपीए का उपयोग उन पैकेजों को स्थापित या अपग्रेड करने के लिए कर सकते हैं जो आधिकारिक उबंटू रिपॉजिटरी में उपलब्ध नहीं हैं ।

अनमेट निर्भरता के सबसे आम कारणों में से एक पीपीए हैं, खासकर जब उबंटू रिपॉजिटरी में मौजूदा पैकेज को अपग्रेड करने के लिए उपयोग किया जाता है । समस्या को हल करने के लिए आपके पास तीन विकल्प हैं: अक्षम करें, शुद्ध करें (उबंटू रिपॉजिटरी में मूल पैकेज पर वापस लौटें) या पीपीए निकालें ।

  • अक्षम करें:

    पीपीए को अक्षम करने का मतलब है कि पीपीए से स्थापित पैकेजों के लिए कोई और अपडेट नहीं है । पीपीए को अक्षम करने के लिए: खोलें Software Center > Edit > Software Sources या,

    मारो Alt+F2 और भागो software-properties-gtk.

    पर क्लिक करें Other Software टैब, आप देखेंगे कि प्रत्येक पीपीए में यहां दो लाइनें हैं, एक संकलित पैकेज के लिए और एक स्रोत के लिए, Uncheck पीपीए को अक्षम करने के लिए दोनों लाइनें । यहां आप पीपीए भी जोड़ और हटा सकते हैं ।

  • पर्ज:

    पीपीए को शुद्ध करने का अर्थ है, चयनित पीपीए में पैकेजों को आधिकारिक उबंटू रिपॉजिटरी में संस्करण में डाउनग्रेड करना और उस पीपीए को अक्षम करना । पीपीए पर्ज ठीक यही करता है । पीपीए पर्ज स्थापित करने के लिए निम्न कमांड चलाएं:

    उपयुक्त sudo-मिल स्थापित ppa-शुद्ध

लेकिन, सवाल पर विचार apt टूट गया है, उपरोक्त आदेश विफल हो जाएगा । तो इस कमांड का उपयोग करें

mkdir ppa-purge && cd ppa-purge && wget http://mirror.pnl.gov/ubuntu/pool/universe/p/ppa-purge/ppa-purge_0.2.8+bzr56_all.deb && wget http://mirror.pnl.gov/ubuntu//pool/main/a/aptitude/aptitude_0.6.6-1ubuntu1_i386.deb && sudo dpkg -i ./*.deb

पीपीए पर्ज का उपयोग करने के लिए:

sudo ppa-शुद्ध पीपीए:someppa/ppa

यदि किसी कारण से' पीपीए-पर्ज ' कमांड विफल हो जाता है, तो आप 'पीपीए-पर्ज' को फिर से नहीं चला सकते हैं जब तक कि आप पीपीए को फिर से सक्षम नहीं करते हैं (पीपीए को सक्षम करने के लिए पीपीए को अक्षम करने के समान चरणों का पालन करें और Check किसी विशेष पीपीए की दोनों पंक्तियों को सक्षम करने के लिए) ।

नोट: PPA Purge पीपीए नहीं हटाता है (भविष्य में हो सकता है), इसलिए आपको पीपीए को मैन्युअल रूप से निकालना होगा ।

  • निकालें:

    यदि पीपीए से स्थापित पैकेज आधिकारिक उबंटू रिपॉजिटरी में मौजूद नहीं है तो उपयोग कर रहा है PPA Purge अनुशंसित नहीं है, क्योंकि डाउनग्रेड होने के लिए कुछ भी नहीं है और PPA Purge इसे भी नहीं हटाएंगे। पीपीए और इंस्टॉल किए गए पैकेज को हटाने के लिए निम्नलिखित कमांड चलाएं: (यदि आप इंस्टॉल किए गए पैकेज को हटाना नहीं चाहते हैं तो पहले कमांड को अनदेखा करें)

    उपयुक्त sudo-मिल autoremove --शुद्ध पैकेज-namesudo जोड़-उपयुक्त-भंडार --हटाने के पीपीए:someppa/ppasudo apt-मिल autoclean

वैकल्पिक रूप से आप उपयोग कर सकते हैं Y PPA Manager पीपीए को अक्षम / हटाने / शुद्ध करने के लिए (उत्तर के अंत में विवरण) ।

निवारक उपाय:

तो हम इसे पहली जगह में होने से कैसे बच सकते हैं?

  • उबंटू को अद्यतित रखें । अपडेट उपलब्ध होने पर उबंटू स्वचालित रूप से सूचित करता है, आप क्लिक करके उपलब्ध अपडेट की जांच भी कर सकते हैं Session Indicator एकता पैनल में:

    या, मारा Alt+Ctrl+T टर्मिनल खोलने और निम्न कमांड चलाने के लिए:

    उपयुक्त sudo-मिल updatesudo उन्नयन apt-मिल

    अद्यतन: स्रोत रिपॉजिटरी में सर्वर के साथ उपलब्ध पैकेजों की अपनी सूची को सिंक्रनाइज़ करता है । अपग्रेड करें: डाउनलोड और आपके इंस्टॉल किए गए पैकेज के किसी भी नए संस्करण को स्थापित करता है ।

  • यदि आप स्रोतों में अन्य रिपॉजिटरी जोड़ने का निर्णय लेते हैं । सूची, सुनिश्चित करें कि रिपॉजिटरी उबंटू के साथ काम करने के लिए है (और काम करने के लिए जाना जाता है) । उबंटू के आपके संस्करण के साथ काम करने के लिए डिज़ाइन नहीं किए गए रिपॉजिटरी आपके सिस्टम में विसंगतियों को पेश कर सकते हैं और आपको फिर से स्थापित करने के लिए मजबूर कर सकते हैं । साथ ही, सुनिश्चित करें कि आपको वास्तव में बाहरी रिपॉजिटरी को जोड़ने की आवश्यकता है क्योंकि आप जिस सॉफ्टवेयर पैकेज की तलाश कर रहे हैं वह पहले से ही आधिकारिक रिपॉजिटरी में पेश किया गया हो! स्रोत
  • डुप्लिकेट पीपीए निकालें। Y PPA Manager (उत्तर के अंत में इंस्टॉलेशन गाइड) डुप्लिकेट पीपीए को आसानी से स्कैन और हटा सकता है ।

    • मारो Alt+F2 और भागो y-ppa-manager वाई पीपीए प्रबंधक खोलने के लिए ।
    • एक बार खोलने के बाद, डबल क्लिक करें या हिट करें Enter पर Advanced.
    • परिणामी विंडो में चयन करें Scan and remove duplicate PPAs और ओके पर क्लिक करें ।

enter image description here

सहायता प्राप्त करना:

जब पर मदद के लिए पूछ Askubuntu या कोई अन्य सहायता मंच, आपको अपने प्रश्न में निम्नलिखित आदेशों का आउटपुट शामिल करना चाहिए:

  • वास्तविक त्रुटि का आउटपुट:

    सुडो एपीटी-पैकेज-नाम स्थापित करें
  • यह आपके स्रोत दिखाएगा।सूची:

    बिल्ली /etc/apt/sources.सूची
  • यह पीपीए की सूची दिखाएगा (यदि कोई हो):

    बिल्ली /etc/apt/sources.सूची।d/*

अतिरिक्त स्रोत:


Y पीपीए प्रबंधक: वाई पीपीए प्रबंधक अपने पीपीए जरूरतों के सभी के लिए एक बंद दुकान है ।

y ppa manager

यहाँ इसकी कुछ विशेषताएं हैं:

  • सभी लॉन्चपैड पीपीए में खोज पैकेज
  • पीपीए में पैकेज सूचीबद्ध करें और डाउनलोड करें
  • जोड़ें / निकालें / शुद्ध एक PPA
  • बैकअप और पीपीए स्रोतों को पुनर्स्थापित करें
  • डुप्लिकेट पीपीए स्रोत निकालें

स्थापित करने के लिए Y PPA Manager, मारकर टर्मिनल खोलें Alt+Ctrl+T और निम्नलिखित कमांड चलाएं:

sudo का जोड़-उपयुक्त-भंडार के पीपीए:webupd8team/वाई-पीपीए-managersudo apt-मिल updatesudo स्थापित apt-मिल y-पीपीए-प्रबंधक

प्रश्न को ध्यान में रखते हुए, apt टूट गया है, इसलिए इसके बजाय इन आदेशों का उपयोग करें

sudo su

और

32 बिट:

mkdir y-ppa-manager && cd y-ppa-manager && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/launchpad-getkeys_0.3.2-1~webupd8~oneiric_all.deb && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/y-ppa-manager_0.0.8.6-1~webupd8~precise_all.deb && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/yad_0.17.1.1-1~webupd8~precise_i386.deb && dpkg -i ./*.deb

64 बिट:

mkdir y-ppa-manager && cd y-ppa-manager && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/launchpad-getkeys_0.3.2-1~webupd8~oneiric_all.deb && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/y-ppa-manager_0.0.8.6-1~webupd8~precise_all.deb && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/yad_0.17.1.1-1~webupd8~precise_amd64.deb && dpkg -i ./*.deb

नोट: चलाने के लिए कहे गए सभी आदेशों को टर्मिनल में चलाया जाना चाहिए, जिसे या तो खोला जा सकता है Ctrl+Alt+T या डैश में टर्मिनल की खोज।

क्या यह वास्तव में टूट गया है?

निम्न कमांड चलाने का प्रयास करें और उस सॉफ़्टवेयर को पुनर्स्थापित करने का प्रयास करें जिसे आप इंस्टॉल करने का प्रयास कर रहे थे

sudo apt-get update

पूर्व Perfomance कदम

बैकअप लेना

निम्न फ़ाइलों का बैकअप लें:

  • /etc/apt/sources.list
  • /var/lib/dpkg/status

ऐसा करने के लिए, इन आदेशों का उपयोग करें

sudo cp /etc/apt/sources.list /etc/apt/sources.list.original

और

sudo cp /var/lib/dpkg/status /var/lib/dpkg/status.original

अपना उपयुक्त-कैश साफ़ करना

apt बैंडविड्थ को बचाने के लिए हाल ही में डाउनलोड किए गए पैकेजों का कैश रखता है जब इसे स्थापित करना आवश्यक होता है । यह कुछ मामलों में प्रति-उत्पादक हो सकता है

अब, इसे साफ करने के लिए, आपके पास दो विकल्प हैं

sudo apt-get clean 

यह फ़ोल्डर से संबंधित सभी कैश्ड पैकेजों को हटा देगा /var/cache/apt/archives/ और /var/cache/apt/archives/partial सिवाय .फ़ाइलों को लॉक करें । यह अनुशंसित है

sudo apt-get autoclean

यह फ़ोल्डरों को स्कैन करता है /var/cache/apt/archives/ और /var/cache/apt/archives/partial और जांचता है कि क्या पैकेज अभी भी रिपॉजिटरी में है और जो नहीं हैं उन्हें हटा देता है


निर्भरता को ठीक करना

एपीटी के फिक्स-ब्रोकन मोड का उपयोग करना

sudo apt-get -f install

यह लापता निर्भरता के लिए स्कैन करने और उन्हें रिपॉजिटरी से ठीक करने के लिए उपयुक्त होगा

यदि आउटपुट बताता है कि कुछ भी नया स्थापित या अपग्रेड नहीं किया गया था, तो यह विफल हो गया है ।


जाँच करना कि क्या सभी आवश्यक स्रोत सक्षम हैं

प्रकार gksu software-properties-gtk और आपको यह विंडो मिलेगी

सुनिश्चित करें कि सभी स्रोत सक्षम हैं ।

इसके बाद, अन्य सॉफ़्टवेयर टैब पर जाएं और जांचें कि क्या सॉफ़्टवेयर स्थापित करने के लिए आवश्यक पीपीए हैं और सक्षम हैं । इसके अलावा, कुछ पीपीए को अक्षम करने का प्रयास करें जो टूटे हुए पैकेज हो सकते हैं

अब, भागो sudo apt-get update

अब सॉफ्टवेयर स्थापित करने का प्रयास करें

से डाउनलोड करने के लिए एक बेहतर सर्वर का चयन

प्रकार gksu software-properties-gtk और आपको यह विंडो मिलेगी

ड्रॉपडाउन बॉक्स से डाउनलोड पर क्लिक करें और अन्य चुनें

सर्वश्रेष्ठ सर्वर का चयन करें पर क्लिक करें

भागो sudo apt-get update

सॉफ़्टवेयर स्थापित करने का प्रयास करें

इसके अलावा, उपयोग करने का प्रयास करें sudo apt-get install -f


पीपीए पर्ज

यह एक उपकरण है जिसका उपयोग टूटे/अवांछित पीपीए और इसके साथ उनके अनुप्रयोगों को शुद्ध करने के लिए किया जाता है

इसे स्थापित करने के लिए, चलाएं

sudo apt-get install ppa-purge

लेकिन, सवाल पर विचार apt टूट गया है इसलिए उपरोक्त आदेश विफल हो जाएगा । तो इस कमांड का उपयोग करें

mkdir ppa-purge && cd ppa-purge && wget http://mirror.pnl.gov/ubuntu/pool/universe/p/ppa-purge/ppa-purge_0.2.8+bzr56_all.deb && wget http://mirror.pnl.gov/ubuntu//pool/main/a/aptitude/aptitude_0.6.6-1ubuntu1_i386.deb && sudo dpkg -i ./*.deb

अब पीपीए पर्ज का उपयोग करें

sudo ppa-purge ppa:someppa/ppa  

वाई-PPA प्रबंधक

वाई-पीपीए प्रबंधक एक जीयूआई ऐप है जो आपको पीपीए और इसके साथ जुड़ी विभिन्न समस्याओं का प्रबंधन करने में मदद करता है

इसे स्थापित करने के लिए

sudo add-apt-repository ppa:webupd8team/y-ppa-manager

और

sudo apt-get update

और

sudo apt-get install y-ppa-manager

प्रश्न को ध्यान में रखते हुए, apt टूटा हुआ है, इसके बजाय इन कमांड का उपयोग करें

sudo su

और

32 बिट:

mkdir y-ppa-manager && cd y-ppa-manager && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/launchpad-getkeys_0.3.2-1~webupd8~oneiric_all.deb && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/y-ppa-manager_0.0.8.6-1~webupd8~precise_all.deb && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/yad_0.17.1.1-1~webupd8~precise_i386.deb && dpkg -i ./*.deb

64 बिट:

mkdir y-ppa-manager && cd y-ppa-manager && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/launchpad-getkeys_0.3.2-1~webupd8~oneiric_all.deb && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/y-ppa-manager_0.0.8.6-1~webupd8~precise_all.deb && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/yad_0.17.1.1-1~webupd8~precise_amd64.deb && dpkg -i ./*.deb

अब टाइप करें y-ppa-manager

आपको इस विंडो के साथ प्रस्तुत किया जाएगा

उन्नत पर डबल क्लिक करें, और आपको यह विंडो मिल जाएगी

काले रंग में उल्लिखित निम्नलिखित कार्य करें


रोकथाम इलाज से बेहतर है

यह करने के लिए बेहतर है को रोकने के लिए की तुलना में के लिए खोज इस सवाल पर AskUbuntu :D

तो, आपको सुरक्षित रखने के लिए यहां दिशानिर्देश दिए गए हैं

अपने सिस्टम को अप-टू-डेट रखें

हमेशा निम्न कमांड को नियमित रूप से चलाएं

sudo apt-get update&&sudo apt-get upgrade

या, आप हमेशा इस कमांड के साथ अपडेट मैनेजर का उपयोग कर सकते हैं

gksu update-manager

केवल विश्वसनीय पीपीए का उपयोग करना

केवल उबंटू पर उपयोग किए जाने वाले पीपीए का उपयोग करें, केवल विश्वसनीय स्रोतों के साथ पीपीए का उपयोग करें । वास्तव में, पैकेज पहले से ही उबंटू रिपॉजिटरी में हो सकता है

जब चीजें अच्छी हों तो बैकअप लें और बाद में इसे बहाल करें

इसके लिए आपको वाई-पीपीए-मैनेजर की आवश्यकता है । इसे स्थापित करने के चरण ऊपर दिए गए हैं ।

वाई-पीपीए-मैनेजर खोलने के लिए इस कमांड को चलाएं

y-ppa-manager

आपको इस विंडो के साथ प्रस्तुत किया जाएगा

उन्नत पर डबल क्लिक करें, और आपको यह विंडो मिल जाएगी

इसे चलाएं:

आपको एक टार बचाने के लिए कहा जाएगा । नीचे दिए गए एक संवाद के साथ जीजेड फ़ाइल । इसे किसी अन्य विभाजन या सुरक्षित स्थान पर सहेजें

बाद में, जब आपको इसे फिर से पुनर्स्थापित करने की आवश्यकता हो,तो समान चरणों का पालन करें और जब आप उन्नत संवाद पर पहुंचें, तो इस पर क्लिक करें:

आपको पिछले बैकअप से पुनर्स्थापित करने के लिए कहा जाएगा जिसे आपने पहले नीचे दिए गए संवाद के साथ सहेजा था


अभी भी काम नहीं कर रहा है?

पैकेज निर्भरता त्रुटियां हमेशा सामान्य नहीं होती हैं और स्थापित किए जाने वाले पैकेज पर निर्भर करती हैं ।

यदि त्रुटि को ठीक करने के लिए दिए गए सभी चरणों का पालन करना आपके लिए काम नहीं करता है, तो आप हमेशा पूछ सकते हैं पूछने Ubuntu

यहां कुछ कमांड दिए गए हैं जिन्हें आपको आउटपुट पोस्ट करने की आवश्यकता है

sudo apt-get install packagename

और

cat /etc/apt/sources.list

और

cat /etc/apt/sources.list.d/*

(धन्यवाद Basharat Sial)

ऐसी अन्य फाइलें/कमांड भी हैं जिन्हें आपको आउटपुट की आवश्यकता है जो त्रुटि विशिष्ट हो सकती है, और उपयोगकर्ता शायद आपको फ़ाइल / कमांड पोस्ट करने के लिए टिप्पणियों में संकेत देंगे ।

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

मैं अत्यधिक अनुशंसा करता हूं योग्यता एक का उपयोग कर किसी को भी.देब आधारित प्रणाली, जैसे डेबियन, काली, उबंटू या इसके किसी भी डेरिवेटिव । यह अनुशंसित और सुझाए गए पैकेजों सहित निर्भरता की परतों के माध्यम से ब्राउज़ करने के लिए एक इंटरफ़ेस प्रदान करता है । यह एक अमूल्य उपकरण है जब उपयुक्त-प्राप्त संघर्ष के समाधान की पेशकश नहीं करता है और सामान्य रूप से निर्भरता को देखने के लिए । (Synaptic में भी उपलब्ध है Ubuntu.)

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

>पैकेज 1: निर्भर करता है: पैकेज 2 (=1.8) लेकिन 1.7.5-1 उबंटू 1 स्थापित किया जाना है

संदेश की व्याख्या:

  1. आपकी स्थापना पूरी होने के लिए, पैकेज 1 को पैकेज 2 की आवश्यकता है ।
  2. >पैकेज2 संस्करण = 1.8 में उपलब्ध होना चाहिए
  3. पैकेज मैनेजर ने सभी रिपॉजिटरी की जाँच की और केवल संस्करण 1.7.5-1 यूबंटु 1 पाया जिसे स्थापित किया जा सकता है, जो कि यह नहीं करेगा क्योंकि यह है & लेफ्टिनेंट; 1.8

फिक्स

इस प्रश्न का कोई एक सही उत्तर नहीं है और कोई सरल उत्तर नहीं है ।

कई परिदृश्य हैं कि ऐसा क्यों हो सकता है और किसी को सभी विकल्पों की जांच करनी होगी और इस त्रुटि को जन्म देने वाली पूर्व शर्त को हल करने का प्रयास करना होगा ।

परिदृश्य ए:

>>सभी रिपॉजिटरी जिनके पास आपके पास संस्करण 2 = 1.8 में पैकेज 2 नहीं है, इसलिए आपको एक रिपॉजिटरी ढूंढनी होगी जो करता है । यदि आप संस्करण =1.8 के साथ भंडार नहीं ढूंढ पा रहे हैं तो आपको स्रोत से पैकेज 2 बनाना और स्थापित करना पड़ सकता है । और फिर पैकेज 1 स्थापित करने का प्रयास करें ।

यदि आप जानना चाहते हैं कि स्रोत से पैकेज कैसे बनाया जाए, तो अन्य प्रश्नों/उत्तरों की जांच करें या एक नया पोस्ट करें ।

परिदृश्य बी:

>रिपॉजिटरी में पैकेज 2 को एक संस्करण = 1.8 में शामिल किया गया है लेकिन पैकेज प्रबंधक अभी भी एक पुराना संस्करण (1.7.5) स्थापित करना चाहता है ।

इसका कारण यह हो सकता है कि पैकेज2 के बाद के संस्करण जहां कुछ नई तकनीक द्वारा निर्मित हैं जो आपके द्वारा पहले से इंस्टॉल किए गए अन्य पैकेजों द्वारा समर्थित नहीं हैं ।

>इसे ठीक करना संभव नहीं होगा । आप उपयुक्त या सिनैप्टिक का उपयोग करने का प्रयास कर सकते हैं और रिपॉजिटरी में उपलब्ध पैकेज 2 के सभी संस्करणों की तलाश कर सकते हैं, और एक विशिष्ट संस्करण = 1.8 स्थापित करने का प्रयास कर सकते हैं

>यदि आपके पास अन्य असंगत पैकेज हैं और आप ऐसा करते हैं, तो आपको अन्य सभी पैकेजों के लिए समान त्रुटि संदेशों की एक सूची मिलेगी जो पैकेज 2=1.8 की स्थापना को रोकते हैं ।

>>>ऐसे में आपको बड़ी समस्या है । आप पैकेज 1 स्थापित करना चाहते थे, जिसे पैकेज 2 को = 1.8 होना चाहिए, लेकिन संस्करण में पैकेज 2 =1.8 के लिए पैकेज 3 को संस्करण = 6.7 में होना चाहिए और आपके पास पैकेज 3 संस्करण 6.3 है

बात यह है कि पैकेज मैनेजर (एपीटी) इन सभी निर्भरताओं को स्वचालित रूप से हल करने का प्रयास करता है यदि यह संभव है । जब यह कहता है कि यह संभव नहीं है (और प्रश्न में एक संदेश जारी करता है), तो आपको इस पर भरोसा करना चाहिए ।

यदि आप पैकेज प्रबंधक पर भरोसा नहीं करने का निर्णय लेते हैं और यदि आप सुनिश्चित हैं कि आपको कोई समस्या नहीं होगी, तो आप सभी पैकेजों के विशिष्ट आवश्यक संस्करणों को एक-एक करके स्थापित करने और ठीक होने की आशा करने के लिए बाध्य करने का प्रयास कर सकते हैं ।

सावधान रहें, सिस्टम पैकेज के लिए ऐसा करने से गंभीर समस्याएं पैदा हो सकती हैं । आप अपने आप को सिस्टम से बाहर लॉक कर सकते हैं, महत्वपूर्ण सेवाओं आदि को ब्लॉक कर सकते हैं ।

परिदृश्य C:

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

परिदृश्य D:

पैकेज मैनेजर के पास पैकेज के बारे में आउट-डेटेड जानकारी तक पहुंच है और इसके लिए कोई समाधान नहीं मिल सकता है । अन्य उत्तरों में देखें ।

परिदृश्य ई:

पैकेज मैनेजर में निर्भरता रिज़ॉल्यूशन कोड में एक बग है ।

आपको यह जांचना होगा कि यह वास्तव में मामला है, और फिर एक बग अनुरोध जारी करें ।

...

परिदृश्य Z:

अन्य परिदृश्य हो सकते हैं ।

उदाहरण के लिए पैकेज अनुरक्षक गलत हो सकते थे और यह जांच नहीं करते थे कि पैकेज 1 पैकेज 2 और लेफ्टिनेंट के संस्करण के साथ भी काम करेगा; 1.8 और विनिर्देश में वे गलत निर्भरता निर्धारित करते हैं ।

जब भी आप बिना किसी निर्भरता के संबंध में त्रुटि प्राप्त करते हैं तो इन विधियों का पालन करने की आवश्यकता होती है

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

1. किसी भी नए आदेश की कोशिश करने या किसी भी नए पीपीए को जोड़ने से पहले यह कोशिश करें

उपयुक्त कैश की सफाई:

sudo apt-get clean

किसी भी अप्रयुक्त निर्भरता की सफाई:

sudo apt-get autoremove

एपीटी-कैश अपडेट करना

sudo apt-get update

यह सभी कैश को हटा देगा और एक नया कैश डाउनलोड करेगा । यह ताजा कैश पैकेज और नए अपडेट प्राप्त करने के लिए किया जाना चाहिए ।

2. कोशिश करो sudo apt-get install -f.

यह शायद पैकेजों को हटाने और स्थापित करने के बारे में कुछ सुझाव देगा, जो उचित लगता है ।

3. बदलें Download Server से Software Sources क्योंकि कभी-कभी सर्वर पर फाइलें दूषित हो जाती हैं ।

enter image description here
enter image description here

4. यह तब भी होता है जब आपने टूटी हुई निर्भरता के लिए बाहरी पीपीए जोड़ा था । उस पीपीए को हटाने का प्रयास करें

  • या तो टाइपिंग sudo add-apt-repository --remove ppa:someppa/ppa और फिर मैन्युअल रूप से पीपीए स्थापित फ़ाइलों/पुस्तकालयों को हटा रहा है

या

  • पीपीए को शुद्ध करना (यह स्थापित फ़ाइलों को भी हटा देता है)

    sudo apt-get install ppa-purge   #a one time install sudo ppa-purge ppa:someppa/ppa  

5. यदि कोई 4 आपका मामला नहीं है तो कम से कम उस पैकेज को हटाने का प्रयास करें जिसे टूटी हुई निर्भरता के रूप में दिखाया जा रहा है । फिर पुनः स्थापित करने का प्रयास करें । यह काफी लोगों के लिए काम करने की सूचना है ।

6. हमेशा एक भंडार/पीपीए का स्थिर संस्करण जोड़ें ।

7 यह भी सुनिश्चित करें कि आपके पास सभी आधिकारिक रिपॉजिटरी सक्षम हैं (में Software Sources)

enter image description here

कृपया सक्षम न करें Proposed Updates जैसा कि वे परीक्षण/डेवलपर्स के लिए हैं ।

enter image description here


जैसा कि डौग ने बताया:

आमतौर पर इसे हल करने के लिए सबसे अच्छा 1 कदम के स्रोत की पहचान करना है <pkg1> & <pkg2>.

>>इसके अतिरिक्त ध्यान नहीं दिया गया है कि कई में, यदि अधिकांश मामलों में नहीं, तो "&लेफ्टिनेंट;जो कुछ भी स्थापित किया जाना है" वास्तव में इसका मतलब है "&लेफ्टिनेंट;जो कुछ भी स्थापित है" और अगर कुछ और काम नहीं करता है तो उसे हटाने की कोशिश की जानी चाहिए (जैसा कि बिंदु 5 में है) ।


मैं ठीक करने के लिए बीमार और चीजों को जोड़ता रहूंगा unmet dependencies.

ज्यादातर मामलों के लिए,पैकेज को स्थापित करना aptitude को हल करेंगे unmet dependencies.By डिफ़ॉल्ट aptitude पैकेज आपके पर स्थापित नहीं था pc.So पहले इसे चलाकर स्थापित करें,

sudo apt-get updatesudo apt-get install aptitude

फिर,

sudo aptitude install packagename

उदाहरण के लिए,

    अविनाश@avinash--लेनोवो आइडियापैड-Z500:~$ sudo apt-get install ubuntu-sdkReading पैकेज की सूची । .. राज्य की जानकारी पढ़ने पर निर्भरता पेड़ का निर्माण । .. डोनर पैकेज नहीं लगाए जा सके ।  इसका मतलब यह हो सकता है कि आपके पास हैएक असंभव स्थिति की आवश्यकता है या यदि आप अस्थिर वितरण का उपयोग कर रहे हैं कि कुछ आवश्यक पैकेज अभी तक नहीं बनाए गए हैंया आवक से बाहर ले जाया गया । निम्नलिखित जानकारी स्थिति को हल करने में मदद कर सकती है:निम्नलिखित पैकेजों में असमान निर्भरताएं हैं: उबंटू-एसडीके : निर्भर करता है: क्यूटीक्रिएटर-प्लगइन-उबंटू लेकिन यह स्थापित नहीं होने वाला है: समस्याओं को ठीक करने में असमर्थ, आपने टूटे हुए पैकेज रखे हैं । 

के माध्यम से पैकेज स्थापित करना aptitude

अविनाश@avinash--लेनोवो आइडियापैड-Z500:~$ sudo योग्यता ubuntu स्थापित-sdkThe निम्नलिखित नए पैकेज स्थापित किया जाएगा: apparmor-easyprof{एक} apparmor-easyprof-ubuntu{एक} में{एक} का निर्माण आवश्यक{एक} क्लिक करें{एक} क्लिक करें-apparmor{एक} क्लिक करें-देव{एक} क्लिक करें-डॉक्टर{एक} कॉर्डोबा-ubuntu-2.8 कॉर्डोबा-ubuntu-2.8-उदाहरण{एक} debhelper{एक} devscripts{एक} dh-apparmor{एक} डीएच-बनाने के लिए{एक} distro-जानकारी-डेटा{एक} dpkg-देव{एक} dput{एक} g++{एक} g++-4.8{एक} जियोक्लू-जिप्सी{एक} libalgorithm-रचनाकार-पर्ल{एक} libalgorithm-रचनाकार-xs-पर्ल{एक} libalgorithm-मर्ज-पर्ल{एक} libboost-filesystem1.53.0{एक} libboost-कार्यक्रम-options1.53.0{एक} libboost-regex1.53.0{एक} libbotan-1.10-0{एक} libdee-qt5-3{एक} libdistro-जानकारी-पर्ल{एक} libexporter-लाइट-पर्ल{एक} libglib2.0-देव{एक} libgstreamer-प्लगइन्स-base1.0-देव{एक} libgstreamer1.0-देव{एक} libgypsy0{एक} libhud2{एक} libio-रेशेदार-पर्ल{एक} libjs-jquery{एक} libjs-sphinxdoc{एक} libjs-अंडरस्कोर{एक} liblockdev1{एक} libmail-sendmail-पर्ल{एक} libparse-debcontrol-पर्ल{एक} libpcre3-देव{एक} libpcrecpp0{एक} libpoppler-qt5-1{एक} libqdjango-db0{एक} libqgsttools-p1{एक} libqt5clucene5{एक} libqt5contacts5{एक} libqt5declarative5{एक} libqt5designer5{एक} libqt5designercomponents5{एक} libqt5feedback5{एक} libqt5help5{एक} libqt5location5-plugins{एक} libqt5multimedia5{एक} libqt5multimedia5-plugins libqt5multimediaquick-p5{एक} libqt5multimediawidgets5{एक} libqt5organizer5{एक} libqt5qml-graphicaleffects{एक} libqt5script5 libqt5scripttools5{एक} libqt5svg5{एक} libqt5svg5-देव libqt5systeminfo5{एक} libqt5v8-5-देव libqt5versit5{एक} libqt5versitorganizer5{एक} libqt5webkit5-देव libqt5webkit5-qmlwebkitplugin{एक} libqt5xmlpatterns5{एक} libqt5xmlpatterns5-देव libstdc++-4.8-देव{एक} libsys-होस्टनाम-लंबी पर्ल{एक} libthumbnailer0{एक} libu1db-qt5-3{एक} libunity कार्रवाई qt1{एक} libupstart-app-launch1{एक} libusermetricsinput1{एक} libxml2-देव{एक} libxslt1-देव{एक} पो-debconf{एक} python3-apparmor-क्लिक करें{एक} python3-क्लिक करें{एक} python3-जादू{एक} qmlscene qt3d5-देव qtbase5-डॉक्टर{एक} qtcreator{एक} qtcreator-डॉक्टर{एक} qtcreator-प्लगइन-ubuntu{एक} qtcreator-प्लगइन-ubuntu-आम{एक} qtdeclarative5-खातों-प्लगइन qtdeclarative5-कॉर्डोबा-2.8-प्लगइन{एक} qtdeclarative5-देव-उपकरण qtdeclarative5-डॉक्टर-html{एक} qtdeclarative5-folderlistmodel-प्लगइन qtdeclarative5-friends0.2 qtdeclarative5-localstorage-प्लगइन qtdeclarative5-कणों-प्लगइन qtdeclarative5-poppler1.0 qtdeclarative5-qtaudioengine-प्लगइन qtdeclarative5-qtfeedback-प्लगइन{एक} qtdeclarative5-qtlocation-प्लगइन qtdeclarative5-qtmultimedia-प्लगइन{एक} qtdeclarative5-qtorganizer-प्लगइन qtdeclarative5-qtquick2-प्लगइन{एक} qtdeclarative5-qtsensors-प्लगइन qtdeclarative5-u1db1.0 qtdeclarative5-ubuntu के-यूआई-एक्स्ट्रा कलाकार-ब्राउज़र प्लगइन{एक} qtdeclarative5-ubuntu के-यूआई-एक्स्ट्रा कलाकार-ब्राउज़र प्लगइन-संपत्ति{एक} qtdeclarative5-ubuntu के-यूआई टूलकिट प्लगइन{एक} qtdeclarative5-एकता-कार्रवाई-प्लगइन{एक} qtdeclarative5-usermetrics0.1 qtdeclarative5-खिड़की-प्लगइन{एक} qtdeclarative5-xmllistmodel-प्लगइन qtgraphicaleffects5-डॉक्टर{एक} qtlocation5-देव{एक} qtmultimedia5-देव qtmultimedia5-डॉक्टर{एक} qtmultimedia5-डॉक्टर-html{एक} qtscript5-देव qtscript5-डॉक्टर{एक} qtscript5-डॉक्टर-html{एक} qtsensors5-देव{एक} qtsvg5-डॉक्टर{एक} qtsvg5-डॉक्टर-html{एक} qttools5-देव qttools5-देव-उपकरण qttools5-डॉक्टर{एक} qtwebkit5-डॉक्टर-html{एक} schroot{एक} schroot-आम{एक} sqlite3{एक} ubuntu के-एचटीएमएल 5-कंटेनर ubuntu के-एचटीएमएल 5-एसडीके{अटल बिहारी} ubuntu के-एचटीएमएल 5-विषय{एक} ubuntu के-एचटीएमएल 5-विषय-उदाहरण के लिए ubuntu-एसडीके ubuntu-एसडीके-libs ubuntu-एसडीके-libs-देव{एक} ubuntu के-यूआई टूलकिट-डॉक्टर{एक} ubuntu के-यूआई टूलकिट-उदाहरण{एक} ubuntu के-यूआई टूलकिट-विषय{एक} एकता-कार्रवाई-डॉक्टर{एक} कल का नवाब-app-लांच{एक} कल का नवाब-एप्लिकेशन लॉन्च-उपकरण{एक} usermetricsservice{एक} wdiff{एक} zlib1g-देव{एक} निम्न संकुल उन्नत किया जाएगा: सीपीपी-4.8 जीसीसी-4.8 जीसीसी-4.8-आधार hud libasan0 libatomic1 libgcc-4.8-देव libgcc1 libglib2.0-0 libglib2.0-बिन libgomp1 libitm1 libquadmath0 libstdc++6 libtsan0 15 संकुल उन्नत, 151 नव स्थापित, 0 दूर करने के लिए और 293 उन्नत नहीं.108 एमबी/126 एमबी अभिलेखागार प्राप्त करने की आवश्यकता है ।  अनपैक करने के बाद 273 एमबी का उपयोग किया जाएगा । निम्नलिखित पैकेजों में असमान निर्भरताएं हैं: उबंटू-एचटीएमएल 5-एसडीके : निर्भर करता है: क्यूटीडीक्लेरेटिव 5-उबंटू-वेबएप्स-एपीआई जो एक वर्चुअल पैकेज है ।                     निर्भर करता है: उबंटू-एचटीएमएल 5-यूआई-टूलकिट लेकिन यह स्थापित नहीं होने वाला है । निम्नलिखित क्रियाएं इन निर्भरताओं को हल करेंगी: निम्नलिखित पैकेजों को उनके वर्तमान संस्करण पर रखें: 1) क्यूटीक्रिएटर-प्लगइन-उबंटू [स्थापित नहीं] 2) उबंटू-एचटीएमएल 5-एसडीके [स्थापित नहीं] 3) उबंटू-एसडीके [स्थापित नहीं] निम्नलिखित निर्भरताओं को अनसुलझा छोड़ दें: 4) लिबहुद-क्लाइंट 2 एचयूडी की सिफारिश करता है (= 13.10.1+13.10.20131014-0 उबंटू 1)5) क्यूटीक्रिएटर-प्लगइन-उबंटू-कॉमन क्यूटीक्रिएटर-प्लगइन की सिफारिश करता है-उबंटुइस समाधान को स्वीकार करें? [Y/n/q/?] yThe निम्नलिखित नए पैकेज स्थापित किया जाएगा: apparmor-easyprof{एक} apparmor-easyprof-ubuntu{एक} का निर्माण आवश्यक{एक} क्लिक करें{एक} क्लिक करें-apparmor{एक} कॉर्डोबा-ubuntu-2.8 debhelper{एक} dh-apparmor{एक} dh-बनाने के लिए{एक} dpkg-देव{एक} g++{एक} g++-4.8{एक} जियोक्लू-जिप्सी{एक} libalgorithm-रचनाकार-पर्ल{एक} libalgorithm-रचनाकार-xs-पर्ल{एक} libalgorithm-मर्ज-पर्ल{एक} libdee-qt5-3{एक} libglib2.0-देव{एक} libgstreamer-प्लगइन्स-base1.0-देव{एक} libgstreamer1.0-देव{एक} libgypsy0{एक} libhud2{एक} libjs-jquery{एक} libmail-sendmail-पर्ल{एक} libpcre3-देव{एक} libpcrecpp0{एक} libpoppler-qt5-1{एक} libqdjango-db0{एक} libqgsttools-p1{एक} libqt5clucene5{एक} libqt5contacts5{एक} libqt5designer5{एक} libqt5designercomponents5{एक} libqt5feedback5{एक} libqt5help5{एक} libqt5location5-plugins{एक} libqt5multimedia5{एक} libqt5multimedia5-plugins libqt5multimediaquick-p5{एक} libqt5multimediawidgets5{एक} libqt5organizer5{एक} libqt5qml-graphicaleffects{एक} libqt5script5 libqt5scripttools5{एक} libqt5svg5{एक} libqt5svg5-देव libqt5systeminfo5{एक} libqt5v8-5-देव libqt5versit5{एक} libqt5versitorganizer5{एक} libqt5webkit5-देव libqt5webkit5-qmlwebkitplugin{एक} libqt5xmlpatterns5{एक} libqt5xmlpatterns5-देव libstdc++-4.8-देव{एक} libsys-होस्टनाम-लंबी पर्ल{एक} libthumbnailer0{एक} libu1db-qt5-3{एक} libunity कार्रवाई qt1{एक} libupstart-app-launch1{एक} libusermetricsinput1{एक} libxml2-देव{एक} libxslt1-देव{एक} पो-debconf{एक} python3-apparmor-क्लिक करें{एक} python3-क्लिक करें{एक} qmlscene qt3d5-देव qtdeclarative5-खातों-प्लगइन qtdeclarative5-कॉर्डोबा-2.8-प्लगइन{एक} qtdeclarative5-देव-उपकरण qtdeclarative5-folderlistmodel-प्लगइन qtdeclarative5-friends0.2 qtdeclarative5-localstorage-प्लगइन qtdeclarative5-कणों-प्लगइन qtdeclarative5-poppler1.0 qtdeclarative5-qtaudioengine-प्लगइन qtdeclarative5-qtfeedback-प्लगइन{एक} qtdeclarative5-qtlocation-प्लगइन qtdeclarative5-qtmultimedia-प्लगइन{एक} qtdeclarative5-qtorganizer-प्लगइन qtdeclarative5-qtquick2-प्लगइन{एक} qtdeclarative5-qtsensors-प्लगइन qtdeclarative5-u1db1.0 qtdeclarative5-ubuntu के-यूआई-एक्स्ट्रा कलाकार-ब्राउज़र प्लगइन{एक} qtdeclarative5-ubuntu के-यूआई-एक्स्ट्रा कलाकार-ब्राउज़र प्लगइन-संपत्ति{एक} qtdeclarative5-ubuntu के-यूआई टूलकिट प्लगइन{एक} qtdeclarative5-एकता-कार्रवाई-प्लगइन{एक} qtdeclarative5-usermetrics0.1 qtdeclarative5-खिड़की-प्लगइन{एक} qtdeclarative5-xmllistmodel-प्लगइन qtlocation5-देव{एक} qtmultimedia5-देव qtscript5-देव qtsensors5-देव{एक} qttools5-देव qttools5-देव-उपकरण sqlite3{एक} ubuntu के-एचटीएमएल 5-कंटेनर ubuntu के-एचटीएमएल 5-विषय{एक} ubuntu के-एचटीएमएल 5-विषय-उदाहरण के लिए ubuntu-एसडीके-libs ubuntu के-यूआई टूलकिट-विषय{एक} कल का नवाब-app-लांच{एक} कल का नवाब-एप्लिकेशन लॉन्च-उपकरण{एक} usermetricsservice{एक} wdiff{एक} zlib1g-देव{एक} निम्न संकुल उन्नत किया जाएगा: सीपीपी-4.8 जीसीसी-4.8 जीसीसी-4.8-आधार hud libasan0 libatomic1 libgcc-4.8-देव libgcc1 libglib2.0-0 libglib2.0-बिन libgomp1 libitm1 libquadmath0 libstdc++6 libtsan0 15 संकुल उन्नत बनाया है, 108 नव स्थापित, 0 दूर करने के लिए और 293 उन्नत नहीं.27.1 एमबी/45.8 एमबी अभिलेखागार प्राप्त करने की आवश्यकता है ।  अनपैक करने के बाद 104 एमबी होगा used.Do आप जारी रखना चाहते हैं? [वाई / एन/?] 

मेरा जवाब रिक के ऊपर के समान है ।

का उपयोग करना apt-get clean, apt-get autoclean, apt-get autoremove, apt-get upgrade, apt-get update, apt-get -u dist-upgrade, आदि । सब मेरे लिए काम नहीं किया ।

मैंने आखिरकार इस मुद्दे को निर्भरता के पेड़ में उतर कर हल किया apt-get install, नीचे एक उदाहरण के साथ सचित्र । मेरे मामले में, मैं स्थापित करना चाहता था libmagickwand-dev:

apt-get install libmagickwand-dev

मुझे यह त्रुटि मिली:

The following packages have unmet dependencies: libmagickwand-dev : Depends: libmagickcore4-extra (= 8:6.6.9.7-5ubuntu3.2) but it is not going to be installed                     Depends: libmagickcore-dev (= 8:6.6.9.7-5ubuntu3.2) but it is not going to be installed

तो, मैं भाग गया apt-get install असफल निर्भरता में से एक के लिए:

apt-get install libmagickcore-devThe following packages have unmet dependencies: libmagickcore-dev : Depends: libmagickcore4-extra (= 8:6.6.9.7-5ubuntu3.2) but it is not going to be installed                     Depends: libgraphviz-dev but it is not going to be installed

मैं पेड़ के नीचे और नीचे उतरा:

apt-get install libgraphviz-dev

एक और त्रुटि के साथ:

The following packages have unmet dependencies: libgraphviz-dev : Depends: libgvc5 (= 2.26.3-10ubuntu1) but it is not going to be installed

पेड़ के नीचे एक बार और गहरा:

apt-get install libgvc5

कुछ अजीब कारण के लिए, यह सफल रहा, और मैं उस मूल पैकेज को स्थापित करने में सक्षम था जिसे मैं चाहता था apt-get install libmagickwand-dev:

Reading package lists... DoneBuilding dependency tree       Reading state information... DoneThe following extra packages will be installed:  libcdt4 libgd2-xpm libgraph4 libpathplan4Suggested packages:  libgd-toolsThe following NEW packages will be installed:  libcdt4 libgd2-xpm libgraph4 libgvc5 libpathplan40 upgraded, 5 newly installed, 0 to remove and 2 not upgraded.Need to get 808 kB of archives.After this operation, 2,320 kB of additional disk space will be used.Do you want to continue [Y/n]?

उत्कृष्ट जवाब! लेकिन आज मेरा मामला आपसे अलग लगता है । यहाँ मेरी सलाह है ।

समस्या:

मैं अपाचे 2 को उबंटू 10.10 में स्थापित करने में विफल रहा ।

rick@wen-VirtualBox:~$ sudo apt-get install apache2Reading package lists... DoneBuilding dependency tree      Reading state information... DoneSome packages could not be installed. This may mean that you haverequested an impossible situation or if you are using the unstabledistribution that some required packages have not yet been createdor been moved out of Incoming.The following information may help to resolve the situation:The following packages have unmet dependencies: apache2 : Depends: apache2-mpm-worker (= 2.2.16-1ubuntu3) but it is not going to be installed or                    apache2-mpm-prefork (= 2.2.16-1ubuntu3) but it is not going to be installed or                    apache2-mpm-event (= 2.2.16-1ubuntu3) but it is not going to be installed or                    apache2-mpm-itk (= 2.2.16-1ubuntu3) but it is not going to be installed           Depends: apache2.2-common (= 2.2.16-1ubuntu3) but it is not going to be installedE: Broken packages

समाधान:

मेरा तरीका निर्भर पैकेज को इंस्टॉल सूची में जोड़ना है ।

अगर 'sudo apt-मिल स्थापित apache2' में विफल रहा है की कोशिश 'उपयुक्त sudo-मिल स्थापित apache2 apache2.2-आम'.

देखें? अपाचे 2.2-आम पिछले चरण के त्रुटि लॉग से आता है ।

अंत में मैंने पाया कि इस तरह एक निर्भरता श्रृंखला है:

 apache2.2-common <-- apache2.2-bin <-- libaprutil1-ldap <-- libaprutil1

पहले 3 पैकेजों के लिए, उपयुक्त-गेट लॉग ने मुझे बताया कि 'स्थापित नहीं होने वाला है',

लेकिन अंतिम पैकेज के लिए, यह दिखाता है 'लिबाप्रुटिल 1-एलडीएपी : निर्भर करता है: लिबाप्रुटिल 1 (= 1.3.9+डीएफएसजी-3बिल्ट 1) लेकिन 1.3.9+डीएफएसजी-3बंटु0. 10. 10. 1 स्थापित किया जाना है'

मेरे पास मेरे लिब में एक अलग संस्करण मौजूद है, इसलिए:

sudo apt-get remove libaprutil1sudo apt-get install apache2

अब यह ठीक है ।

क्या है unmet की निर्भरता त्रुटि

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

संभावित कारण

1.Computer is not connected to the Internet2.The repository containing the depandancy package is not enabled3.Package catalog is not updated4.The version of the depandancy in the current repository is old5.Software index is broken6.The depandancy is not available for ubuntu

आइए इसे हल करने का प्रयास करें

  1. इंटरनेट से कनेक्ट करें: डी
  2. सुनिश्चित करें कि सभी डिफ़ॉल्ट रिपॉजिटरी सक्षम हैं

    >- आप उन्हें आसानी से जोड़ सकते हैं Software Center>>>>- संपादित करें-सॉफ्टवेयर स्रोत-अन्य स्रोत-जोड़ें"

    >- प्रारंभ करें Software Center.

    >-. पैनल में जाएं Edit और चुनें Software Sources.

    edit-software-sources

    >- सुनिश्चित करें कि सभी रिपॉजिटरी चेक किए गए हैंenter image description here

  3. सॉफ़्टवेयर कैटलॉग अपडेट करें

    शीर्ष दाएं आइकन पर क्लिक करें और मेनू में अपडेट-उपलब्ध प्रविष्टि को चुना
    enter image description here

और चेक बटन दबाएं

4.प्रकार ctrl+alt+t टर्मिनल खोलने और टाइप करने के लिए sudo apt-get install -f

5.पीपीए-पर्ज का उपयोग करके हाल ही में जोड़े गए पीपीए को शुद्ध करें पीपीए-पर्ज

यह प्रोग्राम आपके सॉफ़्टवेयर स्रोतों से पीपीए को अक्षम करता है और आपके सिस्टम को आधिकारिक उबंटू पैकेज में वापस लौटा देता है । पीपीए से एक नए संस्करण का परीक्षण करने के बाद आप अपने सिस्टम को सामान्य करने के लिए इसका उपयोग कर सकते हैं ।

सिंटेक्स

sudo ppa-purge ppa:<repository-name>/<subdirectory>

उदाहरण

sudo ppa-purge ppa:ubuntu-mozilla-daily/ppa
  1. सॉफ़्टवेयर केंद्र खोलें ,और किसी भी सॉफ़्टवेयर को स्थापित करने का प्रयास करें , यदि निम्न संवाद बॉक्स दिखाई दिया ,तो मरम्मत बटन दबाएं ,और प्रतीक्षा करें

enter image description here

एल्सप्रकार ctrl+alt+t टर्मिनल खोलने और टाइप करने के लिए sudo apt-get install -f और ऑनस्क्रीन निर्देशों का पालन करें

यदि अभी भी त्रुटि होती है, तो बेझिझक इसमें पूछें askbuntu

...`बिल्ड-डिप`के बारे में मत भूलना

उपरोक्त उन उत्तरों के अलावा-मुझे यह स्वीकार करना होगा कि मुझे आश्चर्य है कि किसी ने भी इस दृष्टिकोण का उल्लेख नहीं किया है, जो कि मैंने हमेशा "सिल्वर बुलेट" के रूप में उपयोग किया है, किसी भी समय मुझे उपयुक्त संघर्ष या अनसुलझे पैकेज का सामना करना पड़ा (या यहां तक कि अगर सिस्टम जिद्दी हो रहा है । ...हा!).

संपादित: उपयोग करना sudo dpkg -r [package] प्रोत्साहित किया जाता है क्योंकि इसमें बहुत शक्तिशाली निष्कासन कार्य है । चूंकि apt-get साथ काम करता है dpkg, जिसका अर्थ है apt-get पालन करेंगे dpkg समारोह।

  sudo dpkg -r [package]  sudo apt-get build-dep [package]    ## pre-install all deps for the package

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

sudo apt-get install [package]

....'उह! चलो अपने हाथ को तब तक घुमाते हैं जब तक आप चिल्लाते नहीं हैं "चाचा!"'

यह मेरे लंबे वर्षों के लिनक्स उपयोग के दौरान शायद ही कभी हुआ था, लेकिन मैंने खुद को इस दृष्टिकोण का उपयोग करते हुए पाया और सफल रहा । यह हाल के संघर्ष के लिए एक उदाहरण है जो मैंने एक महीने पहले पैकेज के साथ किया था mysql-client/mysql-server. माईएसक्यूएल-सर्वर के साथ मेरे रूट पासवर्ड को रीसेट करने के एक दर्जन असफल प्रयासों के बाद (यहां तक कि --स्किप-ग्रांट-टेबल्स टेकक्यूयू के माध्यम से लेकिन अभी तक विफल रहा है), मैं अंत में 'लिनक्स के हाथ को घुमा देने में सफल होता हूं जब तक कि यह "अंकल!"':

sudo dpkg -r mysql-server mysql-clientsudo apt-get autoclean  ## this dumps any copy of existing package to prevent apt-get from "re-using" it.sudo apt-get build-dep mysql-client    ## one package at a time, starting with client firstsudo apt-get install mysql-clientsudo apt-get build-dep mysql-serversudo apt-get install mysql-server

apt-get autoclean इस समाधान में कुंजी है

Actually “the exact package name”, while not relevant in your question, is extremely relevant to any individual’s issue in this regard. Usually the best 1st step to resolving this is to identify the source of pkg1 & pkg2. This seems to have been overlooked in the answers, most of which are quite good otherwise. Additionally not noted is that in many, if not most cases, " स्थापित किया जाना है " वास्तव में इसका मतलब है "

सटीक पैकेज नाम भूल जाओ । यह इस सवाल के लिए अप्रासंगिक है । मैं एक [विहित प्रश्न] बनाने का प्रयास कर रहा हूं(Where to post a "canonical answer" when it's not in response to a specific question? - Meta Stack Exchange). जैसे, सटीक पैकेज इस विशिष्ट उदाहरण में प्रासंगिक नहीं है ।

@ डौग इसे एक उत्तर के रूप में जोड़ें और टिप्पणी नहीं, यह बहुत अच्छा है! :slight_smile:

ओह, और मेरा समस्या निवारण प्रश्न कहाँ है? :smiley:

@Braiam Whaaaat करता है एक बिंदु है, हालांकि, सवाल है, के लिए विशिष्ट नहीं है एक पीपीए और काफी कुछ जवाब नहीं कर रहे हैं या तो. मुझे पता है कि शीर्ष दो उत्तर दूसरों को थोड़ा अभिभूत करते हैं, लेकिन मुझे यकीन नहीं है कि प्रश्न की प्रकृति को बदलना सही समाधान है, खासकर जब से आप अन्य उत्तरों को शून्य करते हैं । मैं इसे अभी के लिए छोड़ रहा हूं क्योंकि मेरे पास बेहतर जवाब नहीं है लेकिन यह सोचने के लिए कुछ है ।

वास्तव में यदि आप देखते हैं कि हर उत्तर में कमोबेश एक ही चीज है । क्या उन्हें एक समुदाय विकी में विलय किया जा सकता है?

मेरे मामले में, इस प्रकार की समस्या इस तथ्य के कारण हुई थी कि सॉफ़्टवेयर और अपडेट के तहत सभी स्रोतों के लिए अपडेट अक्षम थे ।

देखें What information do I need to solve an APT dependency issue? - Unix & Linux Stack Exchange

@ डब्ल्यूएचएए जैसा कि आप [मेटा] में देख सकते हैं discussion](Let's stop using "How do I resolve unmet dependencies?" for dpkg questions (and probably for most apt questions) - Ask Ubuntu Meta), परिवर्तन जानबूझकर किया गया था और किसी ने भी इसके साथ मुद्दों को नहीं उठाया । आप जो सोच सकते हैं उसके बावजूद, इस प्रश्न के अधिक दुरुपयोग को रोकने के लिए परिवर्तन आवश्यक है, जैसा कि मैंने मेटा चर्चा में बताया था ।