कमांड लाइन से source.list में डिफ़ॉल्ट उपयुक्त रिपॉजिटरी को पुनर्स्थापित करें


17

मैं /etc/apt/sources.listकमांड लाइन से डिफ़ॉल्ट को पुनर्स्थापित करने के लिए सबसे अच्छी विधि की तलाश कर रहा हूं ।

क्या पैकेज के स्रोत कोड को संदर्भित करने का कोई तरीका नहीं है जो इस फ़ाइल को उत्पन्न करता है या ऐसा कुछ है? मैं इस फ़ाइल को पुनर्स्थापित करने का एक विश्वसनीय और संस्करण-स्वतंत्र तरीका चाहता हूं।

सॉल्यूशंस ने फैसला सुनाया

इससे पहले कि आप इसे डुप्लिकेट के रूप में चिह्नित करें, ध्यान दें कि मैंने पहले ही इस प्रश्न की समीक्षा की है । यह केवल तभी लागू होता है जब आपके पास उबंटू जीयूआई उपलब्ध हो। यह प्रश्न कमांड लाइन के लिए विशिष्ट है।

मैंने इस प्रश्न की भी समीक्षा की है कि स्वीकृत समाधान क्या किसी ने उनकी sources.listफ़ाइल की सामग्री को चिपकाया है । यह फ़ाइल को पुनर्स्थापित करने का एक उचित तरीका नहीं है क्योंकि फ़ाइल सामग्री प्रदान करने वाले व्यक्ति के इरादों को सत्यापित नहीं किया जा सकता है और फ़ाइल नए रिलीज़ के साथ बदल सकती है।

मैंने simplelinux.ch पर जनरेटर की जाँच की , लेकिन यह उबंटू से भी नहीं है इसलिए मैं इसका उपयोग करने की योजना नहीं करता।

जवाबों:


19

मुझे यकीन नहीं है कि आप क्या चाहते हैं, लेकिन:

  • मूल रिपॉजिटरी हमेशा http://archive.ubuntu.com/ubuntu है - बाकी सब इस का दर्पण है। अन्य प्राथमिक दर्पण में सभी फॉर्म का एक डोमेन होता है <cctld>.archive.ubuntu.com, जहां दो वर्ण लघु कोड कंट्री कोड टॉप लेवल डोमेन होता है । आप लॉन्चपैड में उनकी स्थिति के साथ अतिरिक्त दर्पण पा सकते हैं ।
  • वितरण कोडनाम चैनल (तीसरा शब्द) का हिस्सा है। आप यह lsb_release -scपता लगाने के लिए उपयोग कर सकते हैं , और यह लोअरकेस में रिलीज सुंदर नाम का पहला शब्द है ( trustyउदाहरण के लिए, ट्रस्टी ताहर)।
  • पांच चैनल होते हैं: <codename>, <codename>-security, <codename>-updates, <codename>-backportsऔर <codename>-proposed। पहला आवश्यक है क्योंकि यह आधार है, दूसरा अत्यधिक अनुशंसित है क्योंकि इसमें सुरक्षा फ़िक्सेस शामिल हैं, चौथा केवल तभी जब आपको किसी नए रिलीज़ से कुछ पैकेज की आवश्यकता हो और पाँचवा केवल तभी जब कोई डेवलपर आपसे इसे संभावित परीक्षण के लिए सक्षम करने के लिए कहे। ठीक कर।
  • चार भंडार अनुभाग हैं: main, multiverse, universeऔर restricted( क्या मल्टीवर्स, ब्रह्मांड, प्रतिबंधित और मुख्य के बीच का अंतर है? )

तो आप हमेशा एक तिजोरी बना सकते हैं sources.list, जिसमें सिर्फ:

deb http://archive.ubuntu.com/ubuntu <codename> main multiverse universe restricted
deb http://archive.ubuntu.com/ubuntu <codename>-security main multiverse universe restricted

यदि आप ऐसा करने के लिए एक कमांड चाहते हैं:

printf 'deb http://archive.ubuntu.com/ubuntu %s main multiverse universe restricted\n' $(lsb_release -sc){,-security} > /etc/apt/sources.list

लॉन्चपैड सूची के अलावा, सॉफ्टवेयर सूत्रों का कहना है कार्यक्रम द्वारा प्रदान की गई सूची में से है /usr/share/python-apt/templates/Ubuntu.mirrors, से है जो python-apt-commonपैकेज। यह पैकेज केवल अप्रत्यक्ष रूप से निर्भरता का संकेत है apt, इसलिए इसे सर्वर पर डिफ़ॉल्ट रूप से स्थापित नहीं किया जा सकता है।


यह वही है जिस पर मैं स्पष्टीकरण चाहता था। धन्यवाद!
रयान बर्नेट

यह दोनों पदों के लिए पूरी तरह से उत्तर देता है (एक जुड़ा हुआ है और यह एक)
ब्रायन थॉमस

लेकिन आपको अभी भी उबंटू वेबसाइट पर प्रलेखन के साथ इस उत्तर को मान्य करना होगा क्योंकि आप इस उत्तर को प्रदान करने वाले व्यक्ति के इरादों को सत्यापित नहीं कर सकते हैं?
हर्बर्ट वान-विलेटी

7

यदि आप समझते हैं कि प्रत्येक पंक्ति किस स्थिति में है /etc/apt/sources.list, तो आप अपनी सूची बना सकते हैं। उदाहरण के लिए मेरी लाइन में एक लाइन sources.listहै,

deb http://archive.ubuntu.com/ubuntu/ trusty main

इसके 4 खंड हैं:

  • खंड 1: पहला खंड debयहाँ है जिसका अर्थ है कि यह सभी बाइनरी पैकेजों का भंडार है। केवल अन्य संभावित मूल्य deb-srcजिसका अर्थ है स्रोत कोड का भंडार।
  • धारा 2: इस खंड में रिपॉजिटरी का यूआरआई ( http://us.archive.ubuntu.com/ubuntu/ इस मामले में) है। URI दर्पणों के लिए भिन्न हो सकते हैं जैसे यदि आप आधिकारिक US दर्पण का उपयोग करना चाहते हैं तो URI http://us.archive.ubuntu.com/ubuntu/ होगा ।
  • धारा 3: इसमें आपके द्वारा उपयोग किए जा रहे रिलीज़ का कोडनेम (और चैनल नाम) शामिल है, इस मामले में trustyजो मेरे उबंटू रिलीज़ (14.04 एलटीएस) का कोडनेम है। आप अपने द्वारा पा सकते हैं lsb_release -sc। उदाहरण के लिए, यदि आप 12.04 का उपयोग कर रहे हैं तो कोडनेम "सटीक" होगा। अब अन्य चैनलों को घोषित करने के लिए उदा। सुरक्षा चैनल घोषित करने के लिए जिसे आपको उपयोग करने की आवश्यकता है trusty-security

  • धारा 4: इस खंड में रिपॉजिटरी का "खंड नाम" है। आम तौर पर कर रहे हैं 4 अनुभाग उपयोग होने वाले नाम: main, restricted, universe, multiverse। आप रिपॉजिटरी घोषित करने की एक ही पंक्ति में सभी सेक्शन के नाम रख सकते हैं या आप प्रत्येक सेक्शन के लिए अलग-अलग लाइनों का उपयोग कर सकते हैं लेकिन कोई डुप्लिकेट प्रविष्टि नहीं होनी चाहिए। यदि आप इसे पढ़ते हैं /etc/apt/sources.list, तो आप देखेंगे कि इनमें से प्रत्येक खंड में संकुल का विवरण है।

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