एक विशिष्ट अपग्रेड को उभर-छोड़ कर दुनिया में छोड़ें


30

क्या एक निश्चित उन्नयन को छोड़ने का एक सरल तरीका है emerge -auvD world?

उदाहरण के लिए, वर्तमान में पोर्टेज ट्री में स्थिर के रूप में एक टूटा हुआ media-sound/teamspeak-server-bin-3.0.5-r1 निशान है जो पूरे अपग्रेड को तोड़ता है क्योंकि उस पैकेज की सूची में पहला है। बेशक, मैं बस package.maskफ़ाइल का उपयोग करके इस संस्करण को मुखौटा कर सकता था , लेकिन मैं अभी इसे केवल छोड़ने के लिए एक पर्यावरण चर या कमांडलाइन स्विच पसंद करूंगा - यह शायद वैसे भी जल्द ही तय हो जाएगा।

ध्यान दें कि मैं उपयोग नहीं करना चाहता emerge -auvD1 list of working packages(यानी केवल उनके सभी नामों को निर्दिष्ट करके अन्य पैकेजों को अपडेट करना)।

जवाबों:


38

ऐसा लगता है कि --excludeविकल्प ऐसा करता है:

--exclude ATOMS
पैकेज नामों या स्लॉट परमाणुओं की एक अलग सूची। उभरता कोई भी पुनर्निर्माण या बाइनरी पैकेज स्थापित नहीं करेगा जो किसी भी दिए गए पैकेज परमाणुओं से मेल खाता है।

तो यह मेरे लिए काम किया:

emerge -auvD --exclude=media-sound/teamspeak-server-bin world

मैं किसी एक उदाहरण में एक से अधिक पैकेजों को छोड़कर किसी का उदाहरण नहीं ढूंढ सका हूं, इसलिए संदर्भ के लिए: प्रत्येक पैकेज को एक --excludeटैग की आवश्यकता होती है । emerge --deep --update @world -av --exclude=chromium --exclude=firefox
न्यूक्लियरपॉन

12

यदि आप इसे मास्क नहीं करना चाहते हैं तो आप --keep-goingविकल्प का उपयोग कर सकते हैं । यह उभरती हुई सूची को बिना किसी असफल पैकेज के, अपनी सूची को रीसेट कर देता है और चलता रहता है।


3

ThiefMaster का उत्तर जाने का सही तरीका है, लेकिन एक और विकल्प है, जो मुझे लगता है कि कीथ के उत्तर में सुधार करता है । अर्थात्, उनके उत्तर के साथ उभरने की कोशिश की जाएगी और समय लग सकता है। मामले में आप जानते हैं कि पहला पैकेज समस्याग्रस्त है क्योंकि आपको सिर्फ एक समस्या का सामना करना पड़ा है, आप उपयोग कर सकते हैं --resumeऔर --skipfirst:

--resume(-r)

एक त्रुटि के कारण निरस्त की गई हाल की मर्ज सूची को फिर से शुरू करता है। यह उन तर्कों और विकल्पों का फिर से उपयोग करता है जो मूल कमांड के साथ दिए गए थे जो फिर से शुरू हो रहे हैं, और उपयोगकर्ता कॉल करते समय अतिरिक्त विकल्प भी प्रदान कर सकता है --resume। यह तर्क के रूप में परमाणुओं या सेटों को प्रदान करने के लिए एक त्रुटि है --resume, क्योंकि फिर से शुरू की गई कमांड के तर्क इसके बजाय उपयोग किए जाते हैं। कृपया ध्यान दें कि यह ऑपरेशन केवल विफलता पर एक त्रुटि लौटाएगा। यदि पोर्ट करने के लिए कुछ भी नहीं है, तो पोर्टेज एक संदेश और एक सफलता की स्थिति के साथ बाहर निकल जाएगा। एक फिर से शुरू की सूची तब तक बनी रहेगी जब तक कि यह पूरी तरह से पूरी नहीं हो जाती है या जब तक कि एक अन्य निरस्त मर्ज सूची इसे बदल नहीं देती है। रिज्यूम हिस्ट्री दो मर्ज लिस्ट को स्टोर करने में सक्षम है। एक फिर से शुरू होने की सूची पूरी होने के बाद, यह संभव है--resumeपुरानी सूची को फिर से शुरू करने के लिए एक बार फिर से। फिर से शुरू की गई सूचियों को संग्रहित किया जाता है /var/cache/edb/mtimedb, और चलने से स्पष्ट रूप से खारिज किया जा सकता है emaint --fix cleanresume(इमैन (1) देखें)।

--skipfirst

यह विकल्प केवल तभी मान्य होता है जब इसका उपयोग किया जाता है --resume। यह फिर से शुरू सूची में पहला पैकेज निकालता है। निर्भरताएँ शेष पैकेजों के लिए पुनर्गणित की जाती हैं और जिन पर असंतुष्ट निर्भरताएँ होती हैं या जो नकाबपोश होते हैं वे स्वतः ही गिर जाते हैं। संबंधित --keep-goingविकल्प भी देखें ।

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