मैं एप्टी-गेट के साथ केवल एक विशिष्ट पैकेज कैसे निकालूं?


18

मैंने सिर्फ MySQL-server और इसके सभी आश्रितों को अन्य आवश्यकताओं के बीच स्थापित किया है। लेकिन जब यह mysql- सर्वर को कॉन्फ़िगर करने के लिए गया तो यह ऐसा करने में विफल रहा, और एक त्रुटि को थूक दिया। यहाँ कौन सी त्रुटि प्रासंगिक नहीं है क्योंकि मैं mysql-server और mysql-common के बीच निर्भरता समस्या के रूप में समस्या का पता लगाने में कामयाब रहा। मायिकल-कॉमन को हटाने की जरूरत है।

लेकिन जब मैं जाता हूं

apt-get purge remove mysql-common 

यह स्वचालित रूप से इसके साथ-साथ सभी mysql निर्भरता, यहां तक ​​कि apache2 और php5 सहित सभी चीजों को हटाना चाहता है।

तो केवल एक पैकेज की स्थापना रद्द करने के लिए apt-get कमांड में क्या तर्क जोड़ने की आवश्यकता है, फिर भी अन्य सभी को बरकरार रखें।

जवाबों:


21

apt-get आप ऐसा करने की अनुमति नहीं देंगे, क्योंकि यह पैकेज प्रबंधन प्रणाली के लिए अनुमति देने के लिए एक संभावित खतरनाक कदम है।

जब तक आप जानते हैं कि परिणाम हो सकते हैं, dpkgतब --removeतक इसे करने के विकल्प के साथ उपयोग करें । उदाहरण के लिए:

sudo dpkg --remove mysql-common

नोट : के साथ मेरी 12.04 प्रणाली पर apache2, php5, mysql-serverअलग से स्थापित, का उपयोग कर apt-getदूर करने के लिए mysql-commonनहीं है निकालना चाहते apache2 या PHP5

अनिद्रा की टिप्पणी से: यदि आपको निर्भरता प्रणाली के निर्णय को ओवरराइड करने की आवश्यकता है (बड़ी सावधानी से और सुनिश्चित करें कि आप जानते हैं कि आप क्या कर रहे हैं) एक अतिरिक्त का उपयोग करें --force-depends

sudo dpkg --remove --force-depends mysql-common

ठीक है शुक्रिया। कई अन्य लोगों ने दावा किया कि यह काम किया है। मेरा मतलब बहुत सारे लोगों से है। लेकिन हाँ जो ubuntu पर होता है। लेकिन वास्तव में डेबियन पर im। लेकिन मैंने पूछा यहाँ cuz मैं यहाँ एक उपयोगकर्ता हूँ, और वे बहुत समान हैं और पैकेज सिस्टम समान है .. धन्यवाद कली।
अनिद्रा

चिंता मत करो यार। मैं तुम्हें फांसी नहीं छोड़ने वाला। मैं हमेशा स्वीकार करता हूं। लोग आमतौर पर मुझे स्वीकार करने के बाद इसे अनदेखा करते हैं और अभी भी एक मुद्दा है। लेकिन मैं सिर्फ यह कोशिश की और यह मुझे नहीं होने देंगे। क्या कोई फ़ोर्स कमांड है?
अनिद्रा

क्षमा करें, यह सही है - मुझे लगता है कि आपको इसे करने से पहले कुछ समय इंतजार करना होगा - 15 मिनट, मुझे लगता है? जब भी आपको कोई मौका मिले, तो कृपया जल्दी करें। इसके अलावा, मैंने अभी देखा कि आपने उल्लेख किया है कि आप डेबियन का उपयोग कर रहे हैं - ध्यान दें कि डेबियन से जुड़े प्रश्न ऑफ-टॉपिक हैं, और अक्सर ऐसे ही बंद हो जाते हैं। कृपया भविष्य में कुछ डेबियन-विशिष्ट के लिए unix.stackexchange.com पर पूछने पर विचार करें:
ish

हाँ, मैं इस तरह से लगा .. मुख्य कारण क्यों मैं वास्तव में इसका उल्लेख नहीं किया जब तक मैं जरूरत थी। मेरा मतलब है कि उनके पैकेज मैनेजर समान हैं, उबंटू सिर्फ डेबियन अप है। लेकिन ठीक है। 15 मिनट की बात काम नहीं करती है, क्यूज मैंने 15 मिनट के बाद लंबे समय तक रास्ता बनाने की कोशिश की। लेकिन कठबोली मैं "dpkg -f --remove mysql-common" के समान कुछ लिख सकता हूं?
अनिद्रा

यदि सादा --removeआपको चेतावनी और गर्भपात देता है, तो निश्चित रूप से, आप इसे मजबूर कर सकते हैं -f। BTW, के --removeरूप में ही है -r
ish

0

अगर कोई जानना चाहता है कि 2014 के डेबिन कमांड इसके हैं:

dpkg --force-all -r name_of_package

इसका स्वरूप थोड़ा बदल गया

इसमें बहुत से - तर्क- तर्क दिए गए हैं, ताकि उनके द्वारा बेहतर तरीके से जाँच के लिए:

dpkg --force-help

--force-allनिश्चित रूप से सुरक्षित नहीं है, क्यों नहीं सुझाव --force-dependsऔर एक उपयुक्त चेतावनी भी प्रदान करते हैं?
16

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