सवाल Yum, apt-get, rpm, ./configure && के बीच क्या अंतर है?


मैं लिनक्स के लिए नया हूं और सेंटोस चला रहा हूं। मैं सॉफ़्टवेयर को अपडेट या इंस्टॉल करने के चार तरीकों से आया हूं।

अब तक, मैंने देखा है:

  • yum install [program]
  • apt-get install [program]
  • rpm -i [program].rpm
  • wget [program].tar.gz -> unpack -> ./configure -> make -> make install

वह आखिरी व्यक्ति वास्तविक दर्द है, खासकर विंडोज से आ रहा है, जहां एक प्रोग्राम इंस्टॉल आमतौर पर एक क्लिक और एक अच्छा इंस्टॉल विज़ार्ड होता है।

तो, मेरे प्रश्न हैं:

  • लिनक्स में ऐसा करने के कई अलग-अलग तरीके क्यों हैं?
  • आप किस का उपयोग करने की सलाह देते हैं, और क्यों?
  • क्या लिनक्स में प्रोग्राम इंस्टॉल करने के कोई अन्य तरीके हैं?

109
2018-03-31 02:27


मूल


इसके अलावा, के बारे में क्या yum बनाम up2date। मैं इस अंतर पर कभी स्पष्ट नहीं हुआ हूं। - Josh
apt-get डेबियन के लिए है, और वास्तव में CentOS पर दिखाई नहीं देना चाहिए .... - Kyle Strand


जवाब:


ये उपकरण आपके सिस्टम में सॉफ़्टवेयर इंस्टॉल करते हैं, लेकिन विभिन्न स्तरों पर काम कर रहे हैं।

  • ./configure && इंस्टॉल करें

    चल रहा है ./configure && make install सीधे स्रोत कोड से पुस्तकालयों या निष्पादन योग्य बनाता है और स्थापित करता है।

    make install कदम मूल रूप से केवल अंतिम फाइलों को आपके सिस्टम में कॉपी करता है। कई स्रोत एक विशेष के साथ आते हैं make uninstall उन्हें फिर से हटाने के लिए नियम, लेकिन इसकी गारंटी नहीं है और निश्चित रूप से केवल तभी कार्य करता है जब तक आपके पास कॉन्फ़िगर किए गए स्रोत हों। इसके अलावा, यह आवश्यक निर्भरताओं का ख्याल नहीं रखता है।

    अक्सर एक निश्चित पैकेज के लिए केवल स्रोत कोड उपलब्ध होता है, इसलिए यह जाने का एकमात्र तरीका है। इसके अलावा, ./configure आमतौर पर आपको अपने पैकेज को तैयार करने की अनुमति देने वाले कई विकल्पों को स्वीकार करता है।

    यह पता लगाने में सक्षम नहीं है कि कौन सा सॉफ़्टवेयर स्थापित किया गया है, और सिस्टम से उन्हें हटाने के लिए विश्वसनीय तरीके की कमी इस दृष्टिकोण की प्रमुख कमियां हैं।

  • आरपीएम (रेडहाट पैकेज मैनेजर)

    rpm आपके सिस्टम में पहले से कॉन्फ़िगर और संकलित सॉफ़्टवेयर इंस्टॉल करता है और यह फिर से छुटकारा पाने के लिए अनइंस्टॉल के साथ आता है। संकुल किसी के द्वारा बनाया जाना है। इस व्यक्ति ने पहले ही तय किया है कि कौन सी विशेषताओं को शामिल करना है और पैकेज को अपने सिस्टम लेआउट में कैसे सर्वोत्तम रूप से एकीकृत करना है। यह निर्भरताओं की एक सूची के साथ आता है।

    चूंकि आरपीएमएस का उपयोग कई वितरणों के लिए किया जाता है, इसलिए आप अक्सर यह सुनिश्चित करना चाहते हैं कि यह आरपीएम आपके वितरण के लिए लिखा गया था ताकि पथ, निर्भरता और अन्य हाउसकीपिंग चीजों को स्थापित किया जा सके।

    डेबियन सिस्टम पर, समकक्ष पैकेज प्रारूप है .deb और स्थापना और डेटाबेस द्वारा संभाला जाता है dpkg उपकरण।

  • यम

    yum चारों ओर एक अतिरिक्त रैपर है rpm। यह आम तौर पर ऑनलाइन भंडारों में आपके वितरण के लिए उपलब्ध आरपीएम फाइलों का अपना डेटाबेस रखता है। अधिकांश वितरण के स्थिर संस्करणों के लिए उस डेटाबेस के अंदर सभी पैकेज एक-दूसरे के साथ अच्छी तरह से खेलेंगे। इस डेटाबेस को खोजा जा सकता है (उदा yum search some_name)।

    यह आपके लिए निर्भरताओं को स्वचालित रूप से हल करेगा। पैकेज (और कुछ अतिरिक्त सहायता के साथ उनकी निर्भरता) आसानी से अनइंस्टॉल भी किया जा सकता है।

    डेबियन सिस्टम पर, समतुल्य भंडार और निर्भरता-संकल्प उपकरण Apt द्वारा प्रदान किए जाते हैं (apt-get तथा aptitude)।

तो इसे समेटने के लिए: यदि आप बस कुछ सॉफ्टवेयर कोशिश करना चाहते हैं yum प्रथम। यदि यह वहां उपलब्ध नहीं है, तो आप मौजूदा को खोजने का प्रयास कर सकते हैं rpmपैकेज। यदि कोई नहीं है या आपके पास कुछ विशेष आवश्यकताएं हैं, तो स्रोत से बनाएं।


103
2018-03-31 03:07



मैं क्या कहने वाला था। डेबियन समकक्षों के उल्लेख में जोड़ा गया और स्वरूपण को छुआ। - quack quixote
@quack: धन्यवाद। लेकिन हम सब सिर्फ ऊपर नहीं जा सकते हैं apt-get या फिर भी यह किसी भी चीज़ के लिए अनुशंसित है? - Benjamin Bannier
आप सही हे, योग्यता शायद सिफारिश करने के लिए बेहतर एक है; मैं शामिल हूं apt-get क्योंकि यह व्यापक रूप से संदर्भित है, और एक पाठक जो इसके बारे में नहीं जानता है योग्यता के बारे में सुना होगा apt-get। - quack quixote
Apt-get के साथ क्या गलत है? - recursive
@recursive: कुछ समय पर apt-get स्वचालित निर्भरताओं को रिकॉर्ड नहीं किया और अनइंस्टॉल करने के बाद उन्हें पीछे छोड़ दिया aptitude फिर उचित निर्भरता ट्रैकिंग पेश की। इसके अलावा इसके अलावा कुछ अतिरिक्त सुविधाएं भी उपलब्ध नहीं हैं apt-get। मुझे यकीन नहीं है, लेकिन मुझे लगता है कि किसी बिंदु पर apt-get तथा aptitude जहां उस कार्यक्षमता का अधिक उपयोग करने के लिए उन्नत बैकएंड का उपयोग करने के लिए अद्यतन किया गया है। - Benjamin Bannier


यम आरपीएम एक ही बात है सिवाय इसके कि यम स्वचालित रूप से नेट से संकुल प्राप्त करता है और उन्हें इंस्टॉल करता है (उपयोग कर रहा है rpm -i) एक कदम में। अद्यतन को आसान बनाने के लिए जब भी संभव हो, इसका इस्तेमाल किया जाना चाहिए। उपयोग rpm केवल तभी जब कोई पैकेज नहीं मिला है yum, और उपयोग करें make विधि केवल तभी उपलब्ध होती है जब कोई। आरपीएम पैकेज उपलब्ध न हो या आपको कुछ संकलन-समय विकल्पों को बदलने की आवश्यकता हो।


4
2018-03-31 02:54