कैसे एक नकली संस्करण स्थापित करने के लिए नकली?


23

एक प्रारंभिक दत्तक ग्रहण और 11.04 दैनिक उपयोग करने से मैं कभी-कभी ऐसी स्थिति से मिलता है जब कुछ पैकेजों को मेरे द्वारा स्थापित किए गए अन्य पैकेजों के पहले संस्करणों की आवश्यकता होती है। आमतौर पर आवश्यक पैकेजों के नए (लेकिन इनकार किए गए) संस्करण अपने पुराने संस्करणों की सभी कार्यक्षमता प्रदान करते हैं।

अगर मैं dpkg -i --force-depends-versionनिर्भर पैकेजों को स्थापित करने के लिए उपयोग करता हूं तो सब कुछ ठीक काम करता है, मैंने कभी कोई समस्या नहीं देखी।

हर पैकेज को मैन्युअल रूप से डाउनलोड और इंस्टॉल करने के बजाय, क्या मैं सिस्टम को दिखावा कर सकता हूं कि कोई नया होने पर एक विशिष्ट पैकेज संस्करण स्थापित किया गया है? या वहाँ के लिए एक --force-depends-versionमहत्वपूर्ण बराबर है apt-get?

जवाबों:


16

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


जबकि यह पर्याप्त है। लेकिन लिंक जल्द या बाद में टूट सकता है। बेहतर होगा कि उत्तर के भीतर कम से कम निर्देश को फिर से शुरू किया जाए। मेरा जवाब यहाँ पूछ सकते हैं askubuntu.com/a/1181415/26246 । इसलिए हम इस सवाल का संदर्भ दे सकते हैं कि किसके पास वोट अधिक है।
user.dz

23

एक उत्तर पहले से ही स्वीकार किए जाने के बावजूद, स्वीकार किए गए बेहतर को सम्मिलित करते हुए प्रक्रिया को व्यक्त करता है:

  1. एक डेबियन पैकेज है जिसे equivsडमी पैकेज बनाने में सक्षम है। इसे चलाकर स्थापित करेंsudo apt-get install -y equivs

  2. एक बार स्थापित होने के बाद, आप निम्नलिखित कमांड का उपयोग करके एक टेम्पलेट "कंट्रोल" फ़ाइल उत्पन्न करते हैं: equivs-control postfix( postfixअपने पैकेज के नाम के साथ बदलें )। मेरे मामले में, मैं एक वैकल्पिक पैकेज नाम का उपयोग कर सकता हूं, उदाहरण के लिए postfix-customया जो भी हो लेकिन मेरा कस्टम पैकेज पूरा हो गया है या (फिर से रिक्ति Providesस्थापित करने की निर्भरता)postfixpostfix जो भी पैकेज आप चाहते हैं करना)।

  3. एक बार टेम्प्लेट कंट्रोल फाइल जेनरेट होने के बाद, मैं आमतौर पर कमेंट किए गए स्टेटमेंट (स्टेटमेंट्स जो शुरू होता है #) का एक बहुत हटा देगा । एक कि मैं विशेष रूप से रखना पसंद करता Provides:हूं वह कथन है जहां मैं कह सकता हूं कि मेरा पैकेज दूसरे पैकेज की पेशकश की क्षमता प्रदान करता है जो मैं नकली करने की कोशिश कर रहा हूं, उदाहरण के Provides: postfixलिए डेबियन / उबंटू निर्भरता संकल्प तंत्र को बताता है कि मेरा पैकेज - जो भी नाम- लक्ष्य पैकेज की एक ही क्षमता प्रदान करता है, फिर से postfixया जो भी हो। यह मुझे भ्रम से बचने के लिए अपने पैकेज का नाम लक्ष्य पैकेज से स्वतंत्र रूप से रखने की अनुमति देता है। Erlang Factory अपने सामान के साथ ऐसा करती है, उदाहरण के esl-erlangलिएerlang

  4. अंत में, एक बार टेम्पलेट नियंत्रण फ़ाइल बन जाने के बाद, आप equivs-buildनकली पैकेज बनाने के लिए उपयोग करते हैं, उदाहरण के लिएequivs-build /path/to/generated/control/file

  5. पैकेज बनाने में कुछ सेकंड लगते हैं और फिर आप चला सकते हैं sudo dpkg -i my_package_name*.deb

उन्नत उपयोगकर्ताओं के लिए, यदि आपकी टेम्प्लेट नियंत्रण फ़ाइल में Requires:निर्भरता रेखा है, तो आप gdebiअपने पैकेज को स्थापित करने के लिए एक उपकरण का उपयोग करना चाह सकते हैं और साथ ही विभिन्न पैकेजों को भी निर्भरता के रूप में घोषित करते हैं।

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