मैं डेबियन में एक पैकेज को मज़बूती से कैसे पकड़ सकता हूं?


15

मेरे पास डेबियन में एक पैकेज है जिसे मैन्युअल रूप से पैच किया गया है (आदर्श नहीं, मुझे पता है) कि मुझे इसके वर्तमान संस्करण में पकड़ना होगा ताकि पैच किए गए परिवर्तनों को अपग्रेड न करें (मैं मैन्युअल रूप से निरीक्षण और सुरक्षा अद्यतन लागू करूंगा)। जैसा कि मैंने इसे समझा है, इसके लिए कुछ तरीके हैं:

  • apt-pinning (देखें apt_preferences(5))
  • aptitude hold
  • dpkg --set-selections
  • इसके साथ सेटिंग dselect?

मैंने पढ़ा है कि एक पकड़ दूसरे को प्रभावित नहीं करेगी (इसलिए, उदाहरण के लिए, पैकेज को अपग्रेड करने या aptitude holdरोकने से नहीं होगा )। जब तक मैं पकड़ को हटा नहीं देता, तब तक यह सुनिश्चित करने की जरूरत है कि डेबियन के उपकरण पैकेज को अपग्रेड नहीं करेंगे।apt-getdselect


1
बस एक टिप्पणी, 9 साल पहले किसी ने डेबियन की बग प्रणाली में एक बग बनाया था कि वास्तव में एक पैकेज कैसे पकड़ सकता है , और ऐसा लगता है कि एप्टिट्यूड होल्ड का उपयोग करके कुछ मुद्दे हैं (या था) (लिंक: Bugs.debian.org/cgi-bin/ Bugreport.cgi? बग = 146207 )
लुसियानो

1
वह कोई मैं होगा। :-)। फिर भी एक खुला बग, हालांकि हाल ही में जो लोग पुनरुत्थान को पुनर्जीवित करते हैं, उन्होंने कहा कि वे इस पर एक नज़र डालेंगे।
फहीम मीठा

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

1
Bugs.debian.org/146207 माना जाता है कि अस्थिरता के लिए अपलोड की गई योग्यता के संस्करण में निश्चित है।
फहीम मीठा

जवाबों:


8

aptitudeऔर dpkgअलग-अलग होल्ड फ़ंक्शंस हैं जो एक दूसरे का सम्मान नहीं करेंगे, दुर्भाग्य से। यदि आपको दोनों टूल का उपयोग करना है तो आपको दोनों सेट करना होगा:

उपयुक्त / dpkg: echo $PACKETNAME hold | dpkg --set-selections

योग्यता: aptitude hold $PACKETNAME


3
ऐसा प्रतीत होता है कि अब ऐसा है apt-mark holdजो help.ubuntu.com/community/… के अनुसार करता है, वही काम करता है dpkg --set-selections
andyg0808

3

इस विशेष मामले (पैच पैकेज) में एक बेहतर दृष्टिकोण पैच संस्करण को स्थापित करने के लिए हो सकता है /usr/local। डेबियन कि छू नहीं होगा।


0

जहां तक ​​मुझे पता है, aptitude hold <package>दूसरों द्वारा सम्मानित किया जाएगा जब तक कि आप स्पष्ट रूप से इसे उन्नत करने का आदेश नहीं देते हैं (जैसे कि मार + + जबकि कर्सर "अपग्रेड करने योग्य पैकेज" उपयुक्तता क्षेत्र में है)।


3
ऐसा लगता है कि यह सच नहीं है, ऊपर की टिप्पणियाँ देखें।
१r:०२ पर जूनियर
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.