वास्तव में apt-get install के माध्यम से पैकेज कैसे स्थापित किए जाते हैं?


29

apt-get installUbuntu पर पैकेज स्थापित करने के लिए विधि का उपयोग करते समय , क्या उस पैकेज के लिए स्रोत कोड प्राप्त करने और इसे खरोंच से बनाने के बीच कोई मौलिक अंतर है? क्या apt-get installकार्यक्षमता केवल स्रोत को डाउनलोड करती है और इसे आपकी मशीन पर एक निर्दिष्ट निर्देशिका में बनाती है या क्या पर्दे के पीछे कुछ और चल रहा है?

अंत में (शायद इसका कोई जवाब नहीं है) एक तरीका दूसरे से बेहतर है? मैं यहाँ क्या कर रहा हूँ, क्या इसका निर्माण स्रोत कोड से किया गया है, इसके कोई फायदे हैं या क्या बेहतर है कि apt-getआप इसकी बात करें?

जवाबों:


25

पैकेज प्रबंधन प्रणाली के लाभ जैसे कि उपयुक्त, यम, पैक्मैन, उभरना, आदि में शामिल हैं:

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

हालांकि यह फेडोरा के लिए है, यह भी देखें:

https://fedoraproject.org/wiki/Package_management_system

स्रोत से स्थापित करने के फायदे हो सकते हैं

  • आप बायनेरिज़ को कस्टमाइज़ (सक्षम / अक्षम विकल्प) कर सकते हैं
  • डेट पैकेज तक अधिक रिपॉजिटरी में उपलब्ध है
  • बग फिक्स के लिए कभी-कभी आवश्यक

लेकिन नुकसान यह है कि आपको एक नया संस्करण उपलब्ध होने पर पैकेज को मैन्युअल रूप से अपडेट करना होगा और आप अक्सर ढीले समर्थन करेंगे।

IMO यदि आप अपने सभी या अधिकांश पैकेजों को संकलित करना चाहते हैं, तो मैं जेंटू को सलाह दूंगा।


1
इस उत्कृष्ट उत्तर को स्पष्ट करने के लिए, यदि आप खुद को संकलित करते हैं, तो अपडेट प्रबंधक को अनजान छोड़ दिया जाएगा और इसलिए अपडेट जारी होने पर आपके लिए अपना आवेदन अपडेट नहीं करेगा। इसके अलावा, उपयुक्त (उबंटू के चुने हुए पैकेज प्रबंधक) संकलन नहीं करता है; यह तैयार किए गए संकलित बायनेरिज़ को डाउनलोड करता है। जब आप प्रोग्राम इंस्टॉल या हटाते हैं, तो अंत में, स्वचालित रूप से आपके मेनू सिस्टम को बनाए रखता है। जब आप मैन्युअल रूप से संकलन करते हैं, तो आपको स्वयं ऐसा करना होगा।
धान लैंडौ

1
अपने आप को संकुल संकलित करने का एक अन्य आमतौर पर छोटा लाभ यह है कि वे आपके सटीक हार्डवेयर के अधिक ज्ञान के साथ संकलित होंगे और तेजी से चल सकते हैं। यदि आप इस मार्ग पर जाते हैं, तो चेक स्थापना का उपयोग करने पर विचार करें। asic-linux.com.mx/~izto/checkinstall यह जो इंस्टॉल किया गया था, उस पर नज़र रखता है और ज़रूरत पड़ने पर इसे साफ करने में मदद करता है।
जो

मैं भागते हुए तेजी से भाग के बारे में सही हुआ।
जो

18

Apt-get APT पैकेज हैंडलिंग यूटिलिटी (CLI), बैक-एंड टू सिनैप्टिक और एप्टीट्यूड है

Apt-get अपने सिस्टम जांच से ट्रिगर पर विधि आधिकारिक सूत्रों या खजाने फ़ाइल में सूचीबद्ध

etc/apt/sources.list

उदाहरण के लिए। दौड़ने पर (जो मैं उपयोग करता हूं) , कुछ ऐसा चलाता हैsudo apt-get update && sudo apt-get upgrade

यहां छवि विवरण दर्ज करें

जहां आईजीएन (ध्यान न दें) में सामने लिंक कहा गया है कि कोई परिवर्तन नहीं है कि खजाने को पिछली मुलाकात के बाद किया जाता है, और प्राप्त में है कि भंडार नव उपलब्ध पैकेज के परिवर्तन बताते हुए सूत्रों का कहना है फ़ाइल की पुनर्प्राप्ति कहा गया है।

नहीं, apt-get उपयोगिता स्रोत फ़ाइल डाउनलोड नहीं करती है , बल्कि यह आधिकारिक Ubuntu Packagers द्वारा पैक और जारी किए गए .deb पैकेज को डाउनलोड करती है जिसे आपके सिस्टम के साथ स्थिरता और एकता के लिए परीक्षण किया गया है।

Apt-get डाउनलोड किया संकुल में पाया जा सकता

/var/cache/apt

तुम कहाँ देख सकते हैं सभी Updatesके रूप में .deb संकुल , और तुम भी इस पर जाकर अपने संस्करण पार की जाँच करने के तुलना कर सकते हैं सटीक-अपडेट संकुल

जहाँ तक स्रोत पैकेज से संकलन का सवाल है, यह उचित नहीं है और Ubuntu 12.04 के लिए भी अनुशंसित नहीं है क्योंकि यह LTS रिलीज़ है, आप यहाँ कारण देख सकते हैं

क्या स्रोत से संकलन करना या एक .deb पैकेज से स्थापित करना बेहतर है?

स्रोत से कार्यक्रमों को संकलित करना मेरे ऑपरेटिंग सिस्टम को गति देगा?

स्रोत कोड से इंस्टॉल करने के फायदे / नुकसान

आगे संदर्भ के लिए: apt-get , source.list


वास्तव में 3 कार्यक्रम, उपयुक्त, योग्यता और पर्यायवाची हैंdpkg
जेवियर लोपेज़

1
एप्टीट्यूड dpkg के लिए फ्रंट-एंड है । जबकि dpkg को dpkg-
deb

2

यदि आप स्रोत से निर्माण करते हैं, तो आपके पास और भी विकल्प हैं जो इसमें शामिल हैं। से स्थापित कर रहा है apt-getसिर्फ पहले से बने पैकेज स्थापित करता है।

जिसके लिए बेहतर है, यह इस बात पर निर्भर करता है कि आपको इसके लिए क्या चाहिए। मुझे स्रोत से संकलन करने की आवश्यकता नहीं है, लेकिन मैं अपने ubuntu लैपटॉप पर बहुत व्यापक कुछ भी नहीं करता हूं।


तो उपयुक्त नहीं कुछ भी निर्माण - बस एक द्विआधारी अनिवार्य रूप से डाउनलोड करता है?
गणितज्ञ

3
ठीक ठीक। यह आपके आर्किटेक्चर (amd64, i386, armel, आदि) के लिए प्री-बिल्ट बाइनरी डाउनलोड कर रहा है।
tgm4883

2

मुझे लगता है कि आप संकुल के स्रोतों को स्थापित करने के लिए apt-get का उपयोग कर सकते हैं।

  1. आपको सोर्स कोड रिपॉजिटरी को सक्रिय करना होगा

    /Etc/apt/sources.list फ़ाइल खोलें, आप देखेंगे कि बाहर की पंक्तियाँ (# से शुरू होती हैं) जिनके पास "स्रोत" है।

    उन्हें उतार दो

  2. इच्छित प्रोग्राम की निर्भरता स्थापित करें:

    sudo apt-get build-dep "program"

  3. अपना कार्यक्रम डाउनलोड करें और संकलित करें:

    sudo apt-get -b source "program"

उसके बाद आपको अपने होम डायरेक्टरी पर -deb पैकेज मिलता है।

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