इस लेख में, हम YUM . पर विचार करेंगे पैकेज मैनेजर जो प्रोग्राम (RPM पैकेज) को इंस्टालेशन, हटाने और अपडेट करने की अनुमति देता है, स्वचालित रूप से निर्भरता को हल करता है और अतिरिक्त रिपॉजिटरी का प्रबंधन करता है। यह लेख यम चीट शीट के रूप में आरंभिक लिनक्स प्रशासकों के लिए उपयोगी होगा।
यम (येलोडॉग अपडेटर मॉडिफाइड) RPM पैकेज (RedHat Package Manager) पर आधारित Linux डिस्ट्रोस के लिए एक कंसोल पैकेज मैनेजर है। इनमें RedHat, CentOS, Fedora, Oracle Linux, वैज्ञानिक Linux जैसे लोकप्रिय OS शामिल हैं।
YUM का उपयोग करके पैकेजों को इंस्टाल करना, अपडेट करना और हटाना
किससे शुरू करें? किसी भी अन्य मामले की तरह, आइए मदद से शुरू करें:
yum help
- यम पर पूर्ण सहायता
मैं सबसे लोकप्रिय यम कमांड को हाइलाइट करूंगा:
yum clean all
- सभी पैकेजों के कैश को साफ करता है (आमतौर पर यम के साथ कोई समस्या होने पर उपयोग किया जाता है)
yum makecache
- पैकेज कैशे को फिर से बनाता है
yum repolist
- सभी कनेक्टेड रिपॉजिटरी की सूची प्रदर्शित करता है, आउटपुट इस तरह दिखता है:
लोडेड प्लगइन्स:कैश्ड होस्टफाइल से सबसे तेज मिरर लोडिंग मिरर स्पीड* बेस:* एक्स्ट्रा:* अपडेट्स:रेपो आईडी रेपो नेम स्टेटसबेस/7/x86_64 CentOS-7 - बेस 10,019extras/7/x86_64 CentOS-7 - एक्स्ट्रा 435अपडेट्स/7/ x86_64 CentOS-7 - अपडेट 2,500repolist:12,954
मेरे पास मेरे सिस्टम पर केवल मानक CentOS 7 रिपॉजिटरी स्थापित हैं:बेस, अतिरिक्त और अपडेट।
yum list available
- संस्थापन के लिए उपलब्ध सभी संकुलों की सूची प्रदर्शित करता है।
yum list installed
- सिस्टम में संस्थापित सभी संकुलों की सूची दिखाता है।
yum list kernel
- लिनक्स कर्नेल से संबंधित संकुल की सूची प्रदर्शित करता है।
आप जांच सकते हैं कि आपके CentOS सर्वर पर कोई विशिष्ट पैकेज स्थापित है या नहीं (उदाहरण के लिए, apache पैकेज स्थिति जांचें):
yum list installed httpd
इंस्टॉल किए गए पैकेजhttpd.x86_64 2.4.6-89.el7.centos.1 @updates
आप किसी विशिष्ट पैकेज के बारे में विस्तृत जानकारी प्राप्त कर सकते हैं। उदाहरण के लिए, आइए मारियाडीबी पैकेज के बारे में अधिक जानकारी प्राप्त करें:
yum info mariadb
पैकेज स्थापित करने के लिए, yum install
प्रयोग किया जाता है। अपाचे वेब सर्वर को स्थापित करने के लिए, यह कमांड चलाएँ:
yum install httpd
plugins=0
में /etc/yum.conf
) पैकेज स्थापित करने से पहले, आप कमांड का उपयोग करके इसकी निर्भरता की जांच कर सकते हैं:
yum deplist httpd
यदि आप एक पैकेज स्थापित करना चाहते हैं, लेकिन आप उसका पूरा नाम भूल गए हैं, तो आप *
. का उपयोग कर सकते हैं वाइल्डकार्ड उदाहरण के लिए:
yum install epel-*
डिपेंडेंसीज को हल करना--> ट्रांजेक्शन चेक चलाना ----> पैकेज epel-release.noarch 0:7-11 इंस्टॉल किया जाएगा-> फिनिश्ड डिपेंडेंसी रेजोल्यूशनइंस्टॉल 1 पैकेजकुल डाउनलोड साइज:15 kइंस्टॉल साइज:24 kIs यह ठीक है [y /डी/एन]:
अगर आप अभी दर्ज करते हैं:
yum install epel
कोई पैकेज epel उपलब्ध नहीं है।त्रुटि:करने के लिए कुछ नहीं
आपको कोई पैकेज उपलब्ध नहीं दिखाई देगा।
यम एक साथ कई पैकेज इंस्टाल कर सकता है:
yum install httpd php wget rsyslog
पैकेज को फिर से स्थापित करने के लिए:
yum reinstall proftpd
यम के साथ एक स्थापित पैकेज को हटाने के लिए, निकालें पैरामीटर का उपयोग किया जाता है:
yum remove httpd
किसी भी पैकेज को हटाने से पहले, इसकी निर्भरता की जांच करने की सिफारिश की जाती है (ऐसे पैकेज हैं जो कुछ अन्य पैकेजों को हटाने का कारण बनते हैं जब आप उन्हें हटाने का प्रयास करते हैं)।
yum deplist proftpd
किसी पैकेज को उसके नाम या विवरण से ढूंढने के लिए:
yum search nginx
प्रदान करता है विकल्प का उपयोग करके, आप विशिष्ट फ़ाइल वाले पैकेज ढूंढ सकते हैं, उदाहरण के लिए:
yum provides */squid.conf
सभी संस्थापित पैकेजों को अद्यतन करने के लिए, यह कमांड चलाएँ:
yum update
आप किसी पैकेज को उसके नाम से अपडेट कर सकते हैं:
yum update php
आप निम्न कमांड के साथ जांच सकते हैं कि आपके सिस्टम के लिए कोई अपडेट उपलब्ध है या नहीं:
yum check-update
उपलब्ध सुरक्षा अपडेट के बारे में जानकारी प्राप्त करने के लिए:
yum updateinfo list security
कुछ मामलों में, आपके द्वारा किसी पैकेज या सेवा को अद्यतन करने के बाद समस्याएँ उत्पन्न हो सकती हैं। उदाहरण के लिए, आपके द्वारा php संस्करण को अपडेट करने के बाद आपकी साइट ने काम करना बंद कर दिया है। आप यम का उपयोग करके पिछले पैकेज संस्करण में वापस आ सकते हैं:
yum downgrade php
आप समूहसूची . के साथ संकुल के समूह संस्थापन का भी उपयोग कर सकते हैं . रिपॉजिटरी में विभिन्न प्रोग्राम सेट के साथ कुछ पूर्वनिर्धारित पैकेज समूह हैं। आप इन समूहों की सूची प्रदर्शित कर सकते हैं:
yum grouplist
आइए देखें कि यह "बेसिक वेब सर्वर" सूची के उदाहरण पर कैसे काम करता है। समूह और उसके पैकेज के बारे में अधिक जानने के लिए:
yum groupinfo "Basic Web Server"
जाँच के बाद हम देखते हैं कि वेब सर्वर के लिए संकुल और सेवाओं का सेट स्थापित किया जाएगा।
यहां एक और उपयोगी समूह सूची है - "सिस्टम एडमिनिस्ट्रेशन टूल्स":
yum groupinfo "System Administration Tools”
जैसा कि आप देख सकते हैं, सूची में निगरानी और डिबगिंग टूल शामिल हैं।
आप इस आदेश का उपयोग करके समूह सूची स्थापित कर सकते हैं:
yum groupinstall "System Administration Tools"
संस्थापित संकुल एक अलग ब्लॉक ("स्थापित समूह") में दिखाई देंगे:
YUN इतिहास कमांड का उपयोग करना
आप यम स्थापना इतिहास (लेन-देन की सूची) का उपयोग करके प्रदर्शित कर सकते हैं:
yum history list
आउटपुट में 5 कॉलम होते हैं, पहला वाला ट्रांजेक्शन आईडी दिखाता है जिसका उपयोग आप ट्रांजेक्शन विवरण (इंस्टॉल किए गए पैकेज, निर्भरता) देखने के लिए कर सकते हैं।
उदाहरण के लिए:
yum history info 10
इसके अलावा, आप कमांड का उपयोग करके लेनदेन को पूर्ववत कर सकते हैं:
yum history undo 10
मेरे मामले में, 4 पैकेज हटा दिए गए होंगे:
आप /var/log/yum.log में yum पैकेज इंस्टालेशन/निष्कासन के बारे में जानकारी देख सकते हैं :
cat /var/log/yum.log
उपयोगी YUM कमांड विकल्प
यम के पास कुछ उपयोगी विकल्प हैं जिनकी आपको अक्सर पैकेजों को प्रबंधित करने की आवश्यकता हो सकती है। -y . का उपयोग करें त्रुटियों को छोड़कर सभी यम आउटपुट को दबाने का विकल्प। उदाहरण के लिए:
yum update -y yum install httpd -y
कहने के लिए नहीं अनुरोध करने के लिए, इस विकल्प का उपयोग करें:
--assumeno
बिना किसी प्लग इन के यम का उपयोग करने या उनमें से किसी एक को अक्षम करने के लिए, पैरामीटर का उपयोग करें:
--noplugins
--disableplugin=fastestmirror
अक्षम प्लग इन सक्षम करने के लिए:
--enableplugin=fastestmirror
अक्षम रेपो का उपयोग करने के लिए:
yum update –enablerepo=atomic
यम में एक विशिष्ट भंडार को निष्क्रिय करने के लिए:
yum update –disablerepo=atomic
YUM कॉन्फ़िगरेशन फ़ाइल /etc/yum.conf
YUM कॉन्फ़िगरेशन फ़ाइल है /etc/yum.conf
।
मुख्य कॉन्फ़िग फ़ाइल पैरामीटर हैं:
- कैशडिर - एक स्थानीय पैकेज कैश (डिफ़ॉल्ट रूप से, /var/cache/yum)
- लॉगफाइल — यम लॉग फ़ाइल का पथ
- अप्रचलित — अप्रचलित पैकेजों को अद्यतन करना है या नहीं (1 — हाँ, 0 — नहीं)
- gpgcheck — संस्थापन से पहले पैकेज को सत्यापित करें (1 — हाँ, 0 — नहीं)
- संचय रखें — कैश रखना है या नहीं (1 — हाँ, 0 — नहीं)
- कैशडिर — यम कैश को स्टोर करने के लिए निर्देशिका (डिफ़ॉल्ट रूप से, /var/cache/yum)
- डीबगलेवल - डिबग स्तर 1-10
- प्लगइन्स — यम प्लग इन सक्षम करें (1 — हाँ, 0 — नहीं)
- bugtracker_url - लिंक जहां यम त्रुटियां दर्ज की जाएंगी
- installonly_limit - एक पैकेज के लिए इंस्टॉल किए जा सकने वाले संस्करणों की अधिकतम संख्या
उपयोगी YUM प्लगइन्स
आपको यम में प्लगइन्स की आवश्यकता क्यों है? हर जगह की तरह, वे हमारे काम को आसान बनाते हैं।
यहां कुछ लोकप्रिय प्लगइन्स और उनका विवरण दिया गया है:
यम-प्लगइन-फास्टेस्टमिरर - दर्पण की गति को मापता है और पैकेज स्थापित करने के लिए सबसे तेज़ गति प्रदान करता है।
यम-प्लगइन-सुरक्षा — केवल सुरक्षा अपडेट की सूची प्रदान करता है।
यम-प्लगइन-कुंजी - कुंजियों, कुंजियों-जानकारी, कुंजियों-डेटा, कुंजियों-निकालने वाले मापदंडों का उपयोग करने की अनुमति देता है
निर्देशिका जहां सभी प्लगइन्स संग्रहीत हैं /etc/yum/ . है ।
यम-प्लगइन-संस्करणलॉक - चयनित पैकेजों को अपडेट होने से रोकता है
उपलब्ध यम प्लगइन्स की सूची प्रदर्शित करने के लिए, यह कमांड चलाएँ:
yum search yum-plugin
आप yum install
. का उपयोग करके प्लगइन स्थापित कर सकते हैं किसी भी अन्य पैकेज की तरह:
yum install yum-plugin-changelog
yum -y install yum-versionlock
प्लगइन का उपयोग करके पैकेज को अपडेट करने से रोकने के लिए, निम्न कमांड चलाएँ:
yum versionlock nginx
अवरुद्ध पैकेजों की सूची प्रदर्शित करने के लिए:
yum versionlock list
किसी पैकेज को ब्लॉक की गई सूची से हटाने के लिए:
yum versionlock delete nginx
यदि आप प्लगइन का उपयोग नहीं करना चाहते हैं, तो आप yum कमांड में निम्न विकल्प जोड़कर इसे अक्षम कर सकते हैं:
--disableplugin=fastestmirror
या आप सभी यम प्लग इन को अक्षम कर सकते हैं:
--noplugins
YUM के लिए प्रॉक्सी कैसे कॉन्फ़िगर करें?
पैकेज रिपॉजिटरी के साथ इंटरैक्ट करने के लिए यम HTTP/1.1 प्रोटोकॉल का उपयोग कर रहा है। यदि आपका Linux सर्वर केवल HTTP प्रॉक्सी सर्वर के माध्यम से इंटरनेट का उपयोग कर सकता है, तो आप [main]
में प्रॉक्सी सर्वर का नाम निर्दिष्ट कर सकते हैं आपकी /etc/yum.conf फ़ाइल का अनुभाग:
प्रॉक्सी=https://proxy_server_name:3128
यदि आपके प्रॉक्सी सर्वर को प्रमाणीकरण की आवश्यकता है, तो लाइनें भी जोड़ें:
proxy_proxy_username=proxy_userproxy_password=proxy_user_passw0rd
यह सुनिश्चित करने के लिए कि यम प्रॉक्सी सर्वर के माध्यम से काम करता है, इस कमांड का उपयोग करें:
yum clean all && yum search nginx
इसे जांचने के लिए, मैंने एक जर्मन सार्वजनिक प्रॉक्सी सर्वर पता निर्दिष्ट किया है, और सबसे तेज़ मिरर प्लगइन स्थापना के दौरान ट्रिगर हुआ और इसे सबसे तेज़ गति वाले दर्पण मिले:
यदि आप केवल कुछ रिपॉजिटरी के लिए प्रॉक्सी का उपयोग करना चाहते हैं, तो आपको /etc/yum.conf फ़ाइल में परिवर्तन करने की आवश्यकता नहीं है। आप रिपॉजिटरी कॉन्फ़िगरेशन फ़ाइल /etc/yum.repos.d/your_config.repo में प्रॉक्सी सर्वर सेटिंग्स निर्दिष्ट कर सकते हैं इसके बजाय।
इसलिए हमने लिनक्स सेंटोस/आरएचईएल में यम, आरपीएम पैकेज मैनेजर की बुनियादी विशेषताओं पर विचार किया है। अगले लेख में, हम दिखाएंगे कि YUM/DNF रिपॉजिटरी को और अधिक विस्तार से कैसे प्रबंधित किया जाए।