"निम्नलिखित पैकेजों को वापस रखा गया है" का क्या अर्थ है?


72

जब apt-get upgradeमैं कर रहा हूं तो कभी-कभी एक संदेश मिलता है जिसमें कहा जाता है कि "निम्नलिखित पैकेजों को वापस रखा गया है"। उदाहरण के लिए:

$ sudo apt-get upgrade                                                                                                
Reading package lists... Done                                                                                                          
Building dependency tree                                                                                                               
Reading state information... Done                                                                                                      
The following packages have been kept back:                                                                                            
  linux-headers-server linux-image-server linux-server                                                                                 
0 upgraded, 0 newly installed, 0 to remove and 3 not upgraded.

इसका वास्तव में क्या मतलब है? जाहिर है कि पैकेजों को वापस रखा गया है और स्थापित नहीं किया गया है, लेकिन क्यों?

फॉलो-ऑन सवाल यह होगा: कोई इन रखे हुए पैकेजों को कैसे अपग्रेड करता है?


2
एक बहुत स्पष्ट स्पष्टीकरण यहाँ पाया जा सकता है: debian-administration.org/article/69/…
jplandrain

मैंने टिप्पणियों और तकनीकी दस्तावेज़ीकरण के बारे में संक्षेप में कहा: निम्नलिखित पैकेजों को वापस रखा गया है मैं आपको अपने लेख में पढ़ने और टिप्पणियों को छोड़ने के लिए आमंत्रित करता हूं ताकि इसमें सुधार किया जा सके। इस याचिका को संबोधित करने के लिए आपके समय के लिए धन्यवाद। साथ ही, मेरी इच्छा है कि आपको उपयोगी पोस्ट मिल जाए। यह इसकी कड़ी है: guillermo.lopez.co.cr/… कृपया इस लेख को एक संसाधन के रूप में उद्धृत करें जब किसी को इस विषय के बारे में मदद चाहिए।
इथन

जवाबों:


63

यदि नवीनीकरण के लिए किसी अन्य पैकेज को हटाने की आवश्यकता होती है, या एक नया पैकेज स्थापित किया जाना है, तो पैकेज "वापस रखा जाएगा।" एप-गेट अपग्रेड के लिए मैन पेज के रूप में बताते हैं:

वर्तमान में उपलब्ध नए संस्करणों के साथ स्थापित पैकेज पुनः प्राप्त और उन्नत हैं; किसी भी परिस्थिति में वर्तमान में हटाए गए संकुल को स्थापित नहीं किया जाता है, या पहले से पुनर्प्राप्त और स्थापित नहीं किए गए संकुल को स्थापित किया जाता है।

इस अतीत को पाने के लिए, आप कर सकते हैं

sudo apt-get --with-new-pkgs upgrade

इससे नए पैकेज इंस्टॉल किए जा सकते हैं। यह आपको बताएगा कि वास्तव में इंस्टॉल करने से पहले कौन से पैकेज इंस्टॉल किए जाएंगे और आपको संकेत देंगे।


6
अच्छा, यह अभी तक का सबसे स्पष्ट स्पष्टीकरण है। हालाँकि, आप जिस आदमी को die.net पर लिंक करते हैं, उसमें --with-new-pkgs विकल्प शामिल नहीं है। यह एक करता है: manpages.debian.org/cgi-bin/man.cgi?query=apt-get
Charles Roper

1
लेकिन मैंने सभी पैकेजों को अपडेट और अपग्रेड किया है, इसलिए उन पैकेजों को अपग्रेड क्यों नहीं किया जाता है?
नलपाइंटर

2
@ नलपलट "एप्ट-गेट अपग्रेड" नए पैकेज स्थापित नहीं करेगा (जब तक कि आप ध्वज प्रदान नहीं करते)। ध्वज के बिना, यदि किसी मौजूदा पैकेज के उन्नयन के लिए एक नए पैकेज की स्थापना की आवश्यकता होगी, तो वह उन्नयन नहीं होगा।
चाड

18

मूल रिपोर्ट यह है कि apt-get upgradeपैकेजों को अपग्रेड नहीं किया जाएगा, जिसके लिए पैकेज प्रबंधक पैकेज को हटाना और पुन: स्थापित करना चाहेगा। यह सुरक्षा पैच में बहुत कुछ होता है क्योंकि, अक्सर, यह वास्तव में पुस्तकालयों के अंतिम वितरण संकलन के अग्रदूत थे जिन्हें पैच किया गया था। "आगे बढ़ें और चीजों को हटाएं" कार्यक्षमता रहती है, apt-get dist-upgradeलेकिन सुनिश्चित करें कि apt-get updateजब आप पिछली बार कोशिश करने के बाद अपस्ट्रीम लोगों ने कुछ सोचा हो, तो बस पहले भागना सुनिश्चित करें । कभी-कभी वे चीजों को याद करते हैं और उन्हें जल्दी से ठीक करते हैं।


3

कोशिश करो apt-get dist-upgrade। आदमी पृष्ठ से:

dist-upgrade

dist-upgradeके कार्य करने के अलावा upgrade, पैकेज के नए संस्करणों के साथ बदलती निर्भरता को भी समझदारी से संभालता है; apt-get एक "स्मार्ट" संघर्ष समाधान प्रणाली है, और यदि आवश्यक हो तो कम महत्वपूर्ण लोगों की कीमत पर सबसे महत्वपूर्ण संकुल को अपग्रेड करने का प्रयास करेगी। इसलिए, dist-upgradeकमांड कुछ पैकेजों को हटा सकता है। /etc/apt/sources.listफ़ाइल जहाँ से वांछित पैकेज फ़ाइलों को पुनः प्राप्त करने के लिए स्थानों की एक सूची में शामिल है। apt_preferences(5)व्यक्तिगत पैकेज के लिए सामान्य सेटिंग्स को ओवरराइड करने के लिए एक तंत्र के लिए भी देखें ।

इस आदेश को एक ओर जहां है ऑपरेटिंग सिस्टम के एक नए प्रमुख संस्करण में नवीनीकृत करने के लिए इस्तेमाल, यह करता है नहीं डिफ़ॉल्ट रूप से यह करते हैं। फ़ाइल /etc/apt/sources.listनए संस्करण के लिए परिवर्तित किया जाना चाहिए और फिर एक dist-upgradeप्रयोग किया जाता है।


0

बस करो

sudo apt-get install linux-headers-server linux-image-server linux-server

आयोजित पैकेज को अपग्रेड करने के लिए।

फिर दौड़ो apt-get upgradeऔर तुम ठीक हो जाओगे।


5
यह गलत है। आपके OS को नए संस्करण में अपग्रेड नहींapt-get dist-upgrade करेगा । मतभेद देखने के लिए। man apt-get
BT643

@ BT643 (और जिन लोगों ने टिप्पणी को गलत ठहराया है) कृपया केवल एक टिप्पणी छोड़ने के बजाय गलत उत्तर दें। विशेष रूप से इस तरह गलत तरीके से गलत जवाब जो एक आम गलत धारणा को बनाए रखते हैं। हम अच्छी सामग्री को सामने लाने के लिए वोटों पर निर्भर करते हैं लेकिन गलत सामग्री को नीचे धकेलने के लिए भी।
terdon

1
@terdon मैंने कोशिश की लेकिन पर्याप्त प्रतिनिधि नहीं है :) (डाउनवोट करने के लिए 125 की आवश्यकता है)।
BT643

पहला हिस्सा नहीं है (स्थापित / अपग्रेडेड बैक होल्ड पैकेज) एक अच्छा जवाब है? फिर उन्नयन के साथ आगे बढ़ें। डिस्ट-अप-अप ध्वनियों के बारे में आपत्तिजनक सलाह को दूर करने के लिए एक बेहतर विचार की तरह एक आंशिक रूप से सही उत्तर को
डाउनवोट करना

पहले उपयोग करने पर विचार करें: sudo apt-get --with-new-pkgs upgradeजिसके कारण पैकेज के साइड इफेक्ट नहीं होंगे मैन्युअल रूप से स्थापित होने के रूप में चिह्नित होने के कारण
l --marc l
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.