लिनक्स स्वतंत्रता के बारे में है। जहां मालिकाना ऑपरेटिंग सिस्टम आपको प्रत्येक प्रकार के ऐप के लिए एक डिफ़ॉल्ट की ओर धकेलते हैं (जैसे वेब ब्राउज़र), लिनक्स आपको अपने सिस्टम को अपने स्वाद के अनुसार ढालने के उपकरण देता है। आपको किसी प्रकार के जितने चाहें उतने अलग-अलग प्रोग्राम रखने में सक्षम होना चाहिए। और यही update-alternatives के बारे में है - विकल्पों के बीच स्विच करने का एक आसान तरीका।
यहां बताया गया है कि उबंटू (और अन्य डेबियन-आधारित सिस्टम) में इसका उपयोग कैसे करें।
update-alternatives सिस्टम
विभिन्न विकल्पों में जाने से पहले, हम पर्दे के पीछे चीजों को देखेंगे। एक विकल्प, editor, एक टर्मिनल-आधारित टेक्स्ट एडिटर प्रदान करता है:
whereis editor
editor: /usr/bin/editor /usr/share/man/man1/editor.1.gz
और इस कमांड से टेक्स्ट फ़ाइल खोलना वही करता है जिसकी आप उम्मीद करते हैं:
sudo editor /etc/fstab
यह फाइल सिस्टम कॉन्फिग फ़ाइल को टेक्स्ट एडिटर में खोलेगा... लेकिन कौन सा? नीचे दिए गए सिस्टम पर यह nano में खुला:
editor कमांड वास्तव में एक सिम्बोलिक लिंक (सिमलिंक) है। nano का लिंक, आप पूछ सकते हैं? नहीं! कमांड /usr/bin/editor /etc/alternatives/editor का लिंक है। /etc/alternatives डायरेक्टरी वह जगह है जहां सिस्टम में सभी विकल्पों को सिम्बोलिक लिंक के रूप में प्रबंधित किया जाता है। ये लिंक वास्तविक प्रोग्राम की ओर इशारा करते हैं। तो यह आपकी PATH में एक लिंक है (alternatives डायरेक्टरी में एक लिंक के लिए) एक प्रोग्राम के लिए।
जैसा कि आपने अनुमान लगाया होगा, update-alternatives वह टूल है जो इन लिंक्स को प्रबंधित करने में मदद करता है। आइए देखें कि इसका उपयोग कैसे करना है।
update-alternatives उपयोग का उदाहरण
अधिकांश update-alternatives कमांड जिनका आप उपयोग करेंगे, इस पैटर्न का पालन करते हैं:
sudo update-alternatives [option] [alternative(s)]
उपरोक्त में, alternative(s) उस प्रोग्राम को संदर्भित करता है जिसका आप अंत में उपयोग करेंगे। option वह है जो आप इसके साथ करना चाहते हैं। editor घटक के साथ जारी रखते हुए, इससे पहले कि हम इधर-उधर हाथ डालें, आइए स्थिति का जायजा लें। display विकल्प हमें कुछ विवरण दिखाता है।
update-alternatives --display editor
शीर्ष पंक्तियां हमें editor कमांड का पथ बताती हैं, साथ ही वर्तमान में क्या लिंक किया गया है। इसमें बहुत सी चीजें हैं, जिनमें man पेज अनुवाद आदि शामिल हैं। एक अधिक केंद्रित list कमांड चीजों को समझना आसान बनाता है:
update-alternatives --list editor
वहां, आप देख सकते हैं कि nano वास्तव में editor के विकल्प के रूप में सूचीबद्ध है। लेकिन हम और क्या उपयोग कर सकते हैं? यह हमें तीन विकल्प देता है, जिनमें VIM शामिल है। आप config विकल्प के साथ editor को VIM प्रोग्राम को कॉल करने के लिए पुनः असाइन कर सकते हैं।
sudo update-alternatives --config editor
इंटरएक्टिव मेनू का उपयोग करके, आप एक नया विकल्प चुन सकते हैं। या यदि आप जानते हैं कि आप कौन सा प्रोग्राम चाहते हैं, तो set विकल्प का उपयोग करें:
sudo update-alternatives --set editor /usr/bin/vim.basic
अब हम कुछ ऐसे विकल्पों को देखेंगे जिन्हें आप आजमाना चाह सकते हैं।
उल्लेखनीय update-alternative विकल्प
जैसा कि उल्लेख किया गया है, पहले से ही कई पैकेज हैं जो update-alternatives सिस्टम का उपयोग करते हैं। यहां कुछ ऐसे हैं जो आपके सिस्टम को प्रबंधित करने में उपयोगी साबित हो सकते हैं:
update-alternatives --config java
कुछ प्रोग्राम एक निश्चित जावा संस्करण के इंस्टॉल होने की अपेक्षा/आवश्यकता रखते हैं। उबंटू-आधारित सिस्टम पर, आप रिपॉजिटरी से OpenJDK (ओपन सोर्स जावा) के कई संस्करण इंस्टॉल कर सकते हैं साथ ही आधिकारिक Oracle JRE के कई संस्करण मैन्युअल रूप से इंस्टॉल कर सकते हैं। बाद वाले को विकल्प के रूप में सेट करने से आप तुरंत स्विच कर सकते हैं कि कौन सा जावा वातावरण प्रोग्राम लॉन्च करता है।
नोट: कई जावा-संबंधी विकल्प हैं जिन्हें एक साथ अपडेट किया जाना चाहिए। सुविधा ऐप update-java-alternatives देखें, जो आपके लिए कुछ जावा-विशिष्ट कार्य करता है।
update-alternatives --config x-www-browser/gnome-www-browser
यह काफी आत्म-व्याख्यात्मक है, यह आपको अपना डिफ़ॉल्ट वेब ब्राउज़र सेट करने की अनुमति देगा। यदि आप GNOME-आधारित डेस्कटॉप में काम करते हैं, तो आपको gnome-www-browser को भी देखना चाहिए।
update-alternatives --config mozilla-flashplugin
भले ही बुरे के लिए, अभी भी बहुत सी साइटें हैं जो फ्लैश का उपयोग करती हैं। यह आपको आधिकारिक एडोब संस्करण और gnash जैसे ओपन सोर्स संस्करणों के बीच फ्लिप करने में मदद करेगा।
यदि आप उपलब्ध विकल्पों की पूरी श्रृंखला के बारे में उत्सुक हैं, तो निम्नलिखित को आजमाएं ताकि वे सभी अपनी वर्तमान सेटिंग के साथ सूचीबद्ध हो जाएं:
update-alternatives --get-selections
अपने विकल्पों को अनुकूलित करना
कैनोनिकल द्वारा दिए गए विकल्पों को प्रबंधित करना ठीक है। लेकिन यह स्वतंत्रता नहीं होगी अगर आप इसे अपना नहीं बना सकते, है ना? निम्नलिखित अनुभागों में हम देखेंगे कि अपने स्वयं के विकल्प समूह कैसे जोड़ें और हटाएं।
सिस्टम से विकल्प जोड़ना
जब आप समर्थित पैकेज इंस्टॉल करते हैं तो विकल्प स्वचालित रूप से आपके सिस्टम में जुड़ जाते हैं। उदाहरण के लिए, यदि आपने emacs इंस्टॉल किया, तो इंस्टॉलेशन प्रक्रिया /etc/alternatives में आवश्यक विकल्प बनाने वाला एक स्क्रिप्ट चलाएगी, जिसमें प्राथमिकता भी शामिल होगी।
लेकिन आप अपने स्वयं के विकल्प भी बना सकते हैं, यदि आप पर्याप्त साहसी हैं। यदि आप ऐसा करते हैं, तो आपको ध्यान रखना चाहिए कि आपको इन विकल्पों को मैन्युअल रूप से भरना होगा। उदाहरण के लिए, यदि आप x-word-processor नामक एक नया विकल्प बनाते हैं, तो आपको पहला और सभी बाद के प्रोग्राम हाथ से जोड़ने होंगे। आपको उन्हें हटाना भी होगा, अन्यथा आपका विकल्प उस प्रोग्राम की ओर इशारा कर सकता है जो अब मौजूद नहीं है।
आइए x-word-processor नामक एक समूह और एक विकल्प (इस मामले में उत्कृष्ट LibreOffice Writer) जोड़ते हैं:
sudo update-alternatives --install /usr/bin/word-processor x-word-processor /usr/bin/lowriter 40
यह कमांड बनाता है:
- word-processor नामक एक नया कमांड (वास्तव में एक सिमलिंक) जो प्रतिनिधित्व करता है;
- x-word-processor नामक एक नया विकल्प समूह, जो;
- एप्लिकेशन /usr/bin/lowriter को शामिल करता है (और डिफ़ॉल्ट करता है), जिसमें;
- 40 की प्राथमिकता है।
कमांड लाइन से word-processor कॉल करने पर अब LibreOffice Writer लॉन्च होगा (ऊपर lowriter के रूप में निर्दिष्ट)। आप उसी कमांड से अन्य (जैसे टेक्स्ट-मोड वर्ड प्रोसेसर wordgrinder) जोड़ सकते हैं, वास्तविक एप्लिकेशन के पथ को आवश्यकतानुसार बदलकर:
sudo update-alternatives --install /usr/bin/word-processor x-word-processor /usr/bin/wordgrinder 20
अब x-word-processor समूह को क्वेरी करने पर ये दो विकल्प दिखाई देंगे।
डिफ़ॉल्ट रूप से समूह "ऑटो" मोड में है, जिसका अर्थ है कि सिस्टम उसके द्वारा शामिल किए गए विकल्प का उपयोग करेगा जिसमें सबसे अधिक प्राथमिकता (संख्या के अनुसार) है - इस मामले में LibreOffice (40, बनाम wordgrinder का 20)। आप ऊपर वर्णित config विकल्प का उपयोग करके इसे बदल सकते हैं।
सिस्टम से विकल्प हटाना
यदि आप तय करते हैं कि आपको किसी विकल्प की आवश्यकता नहीं है, तो remove विकल्प का उपयोग करके एक साधारण कमांड इससे छुटकारा दिला देगा।
sudo update-alternatives --remove x-word-processor /usr/bin/wordgrinder
अंत में, remove-all विकल्प अपने सभी विकल्पों सहित पूरे समूह को हटा देगा:
sudo update-alternatives --remove-all x-word-processor
ध्यान दें कि ये update alternatives प्रविष्टियों को हटाते हैं लेकिन उन प्रोग्राम्स को नहीं जिनसे वे जुड़े हुए हैं।
क्या आपने पहले कभी update-alternatives को काम करते देखा है? विकल्पों के साथ काम करने से संबंधित कोई टिप्स या ट्रिक्स? हमें टिप्पणियों में बताएं!
इमेज क्रेडिट: momente via Shutterstock.com