जब आप पहली बार लिनक्स के साथ शुरुआत करते हैं, तो आप नई शब्दावली और लिंगो से सामना कर सकते हैं जिनसे आप अपरिचित हैं। कई उपयोगकर्ताओं के लिए, यह कुछ नया सीखने का मौका हो सकता है, जबकि दूसरों के लिए, अनावश्यक शब्दजाल का उपयोग लिनक्स और ओपन-सोर्स दुनिया को जटिल बना देता है।
यदि आप खुद को इसी तरह के जूते में पाते हैं लेकिन भागने के बजाय लिनक्स की विशिष्टता को अपनाना पसंद करेंगे, तो हमने आपके लिए कुछ सबसे आम लिनक्स शर्तों, शब्दजाल, और लिंगो की एक सूची संकलित की है ताकि लिनक्स में आपका परिवर्तन यथासंभव सुचारू हो सके।
1. लिनक्स (Linux)
सबसे आम और प्रमुख शब्द से शुरू करते हैं: "लिनक्स।" आप सोच सकते हैं कि जिसने लिनक्स इंस्टॉल किया है वह स्पष्ट रूप से जानता होगा कि यह क्या है। लेकिन हर बार ऐसा नहीं होता है। कुछ उपयोगकर्ता इस गलत धारणा में हैं कि लिनक्स एक ऑपरेटिंग सिस्टम है। इसके बजाय, लिनक्स 1991 में लिनस टोरवाल्ड्स द्वारा विकसित एक मुफ़्त और ओपन-सोर्स कर्नेल है, जो हमें हमारे अगले शब्दजाल की ओर ले जाता है।
2. कर्नेल (Kernel)
कर्नेल आपके कंप्यूटर का वह हिस्सा है जो ऑपरेटिंग सिस्टम को हार्डवेयर के साथ इंटरैक्ट करने में मदद करता है। जब भी आप अपने माउस से ऑन-स्क्रीन बटन पर क्लिक करते हैं या कीबोर्ड पर एक कुंजी दबाते हैं, तो जानकारी कर्नेल के माध्यम से जाती है जो बदले में, OS के साथ संचार करता है ताकि डेटा को इनपुट के रूप में लिया जाए और हार्डवेयर (मॉनिटर) का उपयोग करके आउटपुट प्रदर्शित किया जाए।
3. GNU
GNU, "GNU's Not Unix" के लिए एक पुनरावर्ती संक्षिप्त नाम, ओपन-सोर्स टूल का एक संग्रह है जिसका उपयोग कोई भी मुफ़्त में अपने स्वयं के ऐप और ऑपरेटिंग सिस्टम विकसित करने के लिए कर सकता है। रिचर्ड स्टॉलमैन द्वारा स्थापित GNU परियोजना, मुफ़्त में सॉफ़्टवेयर विकसित करने और वितरित करने और हर डेवलपर को ऐसा करने के लिए ओपन-सोर्स टूल प्रदान करने का लक्ष्य रखती है।
लिनक्स कर्नेल GNU के GPL (जनरल पब्लिक लाइसेंस) के तहत लाइसेंस प्राप्त है और इस प्रकार GNU/लिनक्स के रूप में जाना जाता है। ओपन-सोर्स GNU टूल और लिनक्स कर्नेल का उपयोग करके विकसित कोई भी ऑपरेटिंग सिस्टम लिनक्स डिस्ट्रीब्यूशन की श्रेणी में आता है। लेकिन डिस्ट्रीब्यूशन क्या हैं, आप पूछ सकते हैं?
4. डिस्ट्रीब्यूशन (स्पिन्स, फ्लेवर्स, और रीमिक्स)
जैसा कि ऊपर उल्लेख किया गया है, कोई भी ऑपरेटिंग सिस्टम जो कंप्यूटर हार्डवेयर के साथ संचार करने के लिए लिनक्स कर्नेल का उपयोग करता है, लिनक्स डिस्ट्रीब्यूशन कहलाता है। शब्द "डिस्ट्रीब्यूशन," या संक्षेप में डिस्ट्रो, साझा करने की प्रक्रिया से आता है, अनिवार्य रूप से लिनक्स-आधारित ऑपरेटिंग सिस्टम को मुफ़्त में "वितरित" करना।
डेवलपर्स और लिनक्स टिंकरर्स मुख्यधारा के लिनक्स डिस्ट्रो के स्पिन्स और रीमिक्स भी जारी करते हैं। एक "स्पिन" या "रीमिक्स" मूल ऑपरेटिंग सिस्टम का एक अनुकूलित या व्युत्पन्न संस्करण को संदर्भित करता है। आम तौर पर, बेस OS और इसके स्पिन के बीच का अंतर डेस्कटॉप इंटरफेस या पैकेज चयन में होता है, या दोनों में।
उबंटू को उदाहरण के लिए लें। इसके कई फ्लेवर्स हैं जिनमें Xubuntu, Lubuntu, और Kubuntu शामिल हैं, प्रत्येक एक अलग डेस्कटॉप वातावरण के साथ। इसी तरह, फेडोरा अपने अनौपचारिक डेरिवेटिव को "स्पिन्स" के रूप में संदर्भित करता है। कुल मिलाकर, स्पिन, रीमिक्स, और फ्लेवर, उनमें से प्रत्येक का एक ही अर्थ है।
5. डेस्कटॉप वातावरण (Desktop Environments)
उपयोगकर्ताओं के लिए कंप्यूटिंग को सरल बनाने के लिए, ऑपरेटिंग सिस्टम में एक डेस्कटॉप होता है जो सिस्टम को प्रबंधित करने का एक ग्राफिकल तरीका प्रदान करता है। विंडोज और macOS अपने सिग्नेचर डेस्कटॉप के लिए प्रसिद्ध हैं, लेकिन लिनक्स अपना काम बहुत अलग तरीके से करता है।
लिनक्स पर, आपको मुफ़्त में इंस्टॉल करने के लिए बहुत सारे डेस्कटॉप मिलेंगे, जिन्हें डेस्कटॉप वातावरण के रूप में जाना जाता है। डेस्कटॉप वातावरण आमतौर पर एक विंडो मैनेजर प्रोग्राम और कई ऐप्स और विजेट्स के साथ आते हैं जो विंडो मैनेजर के साथ मिलकर उपयोगकर्ता अनुभव को समृद्ध करते हैं। कुछ लोकप्रिय डेस्कटॉप वातावरण GNOME, KDE Plasma, XFCE, Pantheon, और LXDE हैं।
6. विंडो मैनेजर (Window Managers)
विंडो मैनेजर प्रोग्राम हैं जो आपकी स्क्रीन पर विंडो के स्थान और गति को नियंत्रित करते हैं। हालांकि विंडो मैनेजर आमतौर पर डेस्कटॉप वातावरण के साथ पर्दे के पीछे काम करते हैं, आप उन्हें अपने लिनक्स मशीन पर अलग से भी उपयोग कर सकते हैं। वे गैर-तकनीकी उपयोगकर्ताओं के लिए सेट अप करने में जटिल हो सकते हैं, जो मुख्य कारण है कि हर कोई उन्हें पहले स्थान पर उपयोग करना पसंद नहीं करता।
विंडो मैनेजर हल्के होते हैं और डेस्कटॉप वातावरण की तुलना में बेहतर प्रदर्शन प्रदान करते हैं क्योंकि वे अनावश्यक ऐप्स और विजेट्स के साथ नहीं आते हैं। यदि आप विंडो मैनेजर के लिए जाते हैं तो आपको एक स्टैंडअलोन मेनू और कंपोज़िटर भी इंस्टॉल करना होगा।
i3wm, bspwm, awesome, और Fluxbox कुछ लोकप्रिय विंडो मैनेजर हैं। KDE Plasma और GNOME डेस्कटॉप हुड के तहत KWin और Mutter विंडो मैनेजर का उपयोग करते हैं।
7. टर्मिनल (Terminal)
यदि आप लिनक्स में नए हैं, तो आपको बहुत सारे टेक्स्ट के साथ एक काली खिड़की की झलक याद हो सकती है। वह लिनक्स टर्मिनल है, जिसे कमांड लाइन के रूप में भी जाना जाता है।
टर्मिनल आपके ऑपरेटिंग सिस्टम के शेल को नियंत्रित करने के लिए उपयोग किया जाने वाला एक प्रोग्राम है। एक शेल एक टेक्स्ट-आधारित या ग्राफिकल इंटरफेस है जिसका उपयोग आप अपने डेस्कटॉप के साथ इंटरैक्ट करने के लिए करते हैं। लिनक्स टर्मिनल विंडोज पर कमांड प्रॉम्प्ट के समान है और एक प्रशासक को अपने सिस्टम को कुशलतापूर्वक नियंत्रित और प्रबंधित करने में मदद करता है।
जबकि अन्य OS लंबे समय से टर्मिनल एमुलेटर का उपयोग करने से आगे बढ़ गए हैं, कमांड लाइन अभी भी लिनक्स-आधारित ऑपरेटिंग सिस्टम पर प्रचलित है।
8. रूट (Root)
लिनक्स पर, रूट दो चीजों को संदर्भित करता है: रूट डायरेक्टरी और रूट उपयोगकर्ता। रूट डायरेक्टरी पैरेंट डायरेक्टरी है जिसमें आपके सिस्टम पर हर फ़ाइल और फ़ोल्डर होता है। आप अपने कमांड में रूट डायरेक्टरी को दर्शाने के लिए वाइल्डकार्ड "/" (फॉरवर्ड स्लैश) का उपयोग कर सकते हैं।
दूसरी ओर, रूट उपयोगकर्ता, जिसे सुपरयूज़र के रूप में भी जाना जाता है, या बस रूट, वह उपयोगकर्ता है जिसके पास सभी प्रशासनिक विशेषाधिकार हैं। रूट उपयोगकर्ता किसी भी फ़ाइल को देख और संपादित कर सकता है, सिस्टम या अन्य उपयोगकर्ताओं में परिवर्तन कर सकता है, और यहां तक कि पूरी डायरेक्टरी पदानुक्रम को हटा सकता है। सीधे शब्दों में कहें, यह उच्चतम स्तर के नियंत्रण वाला लिनक्स उपयोगकर्ता है।
9. पैकेज मैनेजर (Package Managers)
लिनक्स पर, ऐप्स पैकेज के रूप में वितरित किए जाते हैं और आपके डिस्ट्रीब्यूशन के आधिकारिक रिपॉजिटरी में उपलब्ध होते हैं। एक पैकेज मैनेजर एक प्रोग्राम है जिसका उपयोग लिनक्स सिस्टम पर पैकेज को प्रबंधित करने के लिए किया जाता है। यह आपको अपने डिस्ट्रो के रिपॉजिटरी जैसे स्रोतों से पैकेज जोड़ने या हटाने की अनुमति देता है। यदि आप चाहें तो आप पैकेज मैनेजर के साथ अतिरिक्त थर्ड-पार्टी रिपॉजिटरी भी जोड़ सकते हैं।
APT, RPM, और pacman लिनक्स डिस्ट्रो पर पाए जाने वाले तीन सबसे लोकप्रिय पैकेज मैनेजर हैं। डेबियन और उबंटू-आधारित डिस्ट्रीब्यूशन APT पैकेज मैनेजर का उपयोग करते हैं; फेडोरा, सेंटओएस, और RHEL में RPM पैकेज मैनेजर होता है, जबकि आर्क लिनक्स और इसके डेरिवेटिव pacman के साथ आते हैं।
10. स्रोत और बाइनरी पैकेज (Source and Binary Packages)
लिनक्स में एक पैकेज एक संग्रह को संदर्भित करता है जिसमें प्रोग्राम के निष्पादन या इंस्टॉलेशन के लिए आवश्यक फ़ाइलें होती हैं। लिनक्स पर सॉफ़्टवेयर आमतौर पर पैकेज के रूप में वितरित किया जाता है और उपयोगकर्ताओं के लिए दो प्रकार के पैकेज उपलब्ध होते हैं: स्रोत और बाइनरी पैकेज।
स्रोत पैकेज में एक प्रोग्राम का स्रोत कोड होता है जिसे उपयोगकर्ता को मैन्युअली संकलित और इंस्टॉल करना पड़ता है ताकि सॉफ़्टवेयर चल सके। दूसरी ओर, एक बाइनरी पैकेज में सॉफ़्टवेयर के लिए पूर्व-निर्मित और पूर्व-संकलित निष्पादन योग्य होते हैं।
11. रिपॉजिटरी (Repositories)
सॉफ़्टवेयर रिपॉजिटरी दूरस्थ सर्वर हैं जो संबंधित मेटाडेटा के साथ पैकेज के संग्रह को संग्रहीत करते हैं। प्रत्येक लिनक्स डिस्ट्रो या तो रिपॉजिटरी का अपना सेट रखता है या उपयोगकर्ताओं को सॉफ़्टवेयर प्रदान करने के लिए अपने पैरेंट डिस्ट्रो के रिपॉजिटरी का उपयोग करता है।
12. बूटलोडर (GRUB)
बूटलोडर आपके कंप्यूटर को बूट करने के लिए जिम्मेदार एक प्रोग्राम है। आमतौर पर, ऑपरेटिंग सिस्टम और उसका डेटा नॉन-वोलेटाइल स्टोरेज डिस्क में संग्रहीत होते हैं, उदाहरण के लिए HDD। बूटलोडर बूट समय के दौरान सही ऑपरेटिंग सिस्टम को लोड करने में मदद करता है और प्रारंभिक प्रक्रियाओं को मेमोरी में जोड़ता है।
GRUB लिनक्स के साथ विंडोज को डुअल-बूट करते समय सबसे अधिक उपयोग किए जाने वाले बूटलोडर में से एक है। अन्य उदाहरणों में LILO, BURG, और Syslinux शामिल हैं।
13. प्रोसेस (Process)
आप अपने सिस्टम पर जो भी प्रोग्राम लॉन्च करते हैं वह पृष्ठभूमि में प्रक्रियाओं के संग्रह के रूप में चलता है। एक प्रोसेस एक चल रहे प्रोग्राम का मूल उदाहरण है जो आपके कंप्यूटर पर गणना करता है।
वेब ब्राउज़र जिसे आपने अभी इंटरनेट ब्राउज़ करने के लिए खोला है, एक प्रोसेस, या प्रोसेस का एक सेट लॉन्च करता है ताकि आप इसके साथ इंटरैक्ट कर सकें और इंटरनेट ब्राउज़ कर सकें। इसी तरह, आपके सिस्टम का फ़ाइल मैनेजर, टर्मिनल, मीडिया प्लेयर, और हर दूसरा प्रोग्राम आउटपुट उत्पन्न करने के लिए प्रोसेस पर निर्भर करता है।
14. शेल (Bash, Zsh, आदि)
जैसा कि पहले उल्लेख किया गया है, एक शेल एक इंटरफेस है जो आपको अपने सिस्टम के साथ इंटरैक्ट करने में मदद करता है। यह टर्मिनल की तरह कमांड-लाइन इंटरफेस या GNOME शेल की तरह ग्राफिकल हो सकता है। एक शेल आपके द्वारा टर्मिनल में दर्ज किसी भी कमांड के लिए कमांड इंटरप्रेटर के रूप में भी कार्य करता है।
आप लिनक्स पर कई अलग-अलग शेल इंस्टॉल कर सकते हैं। उदाहरणों में Bash, Zsh, Fish, sh, Ksh, आदि शामिल हैं। प्रत्येक शेल की वही भूमिका होती है: उपयोगकर्ता और प्रोसेस को सिस्टम पर अन्य प्रोसेस के साथ इंटरैक्ट करने में मदद करना।
15. शेल स्क्रिप्टिंग (Shell Scripting)
जब आप लिनक्स कमांड का एक गुच्छा लिखते हैं और उन्हें एक ही फ़ाइल में एक साथ लपेटते हैं, तो परिणामी फ़ाइल को "शेल स्क्रिप्ट" कहा जाता है। शेल स्क्रिप्टिंग आपके सिस्टम पर इंस्टॉल शेल द्वारा व्याख्या किए गए लिनक्स कमांड का उपयोग करके स्क्रिप्ट लिखने की प्रक्रिया है। बैच स्क्रिप्ट लिनक्स पर शेल स्क्रिप्ट के विंडोज समकक्ष हैं।
शेल स्क्रिप्टिंग का सबसे लोकप्रिय रूप Bash स्क्रिप्टिंग है, जो Bash शेल का उपयोग करके स्क्रिप्ट लिखने और निष्पादित करने को संदर्भित करता है। शेल स्क्रिप्ट आपके लिनक्स मशीन पर कार्यों को स्वचालित करने का एक शक्तिशाली तरीका है; वे उपयोगकर्ताओं के लिए कंप्यूटिंग को बहुत सरल और मजेदार बनाते हैं।
लिनक्स के बारे में जानने के लिए अभी बहुत कुछ बाकी है!
शर्तों और शब्दजाल को जानना आपको लिनक्स पावर उपयोगकर्ता बनने के आपके लक्ष्य के एक कदम करीब लाता है। लिनक्स का उसकी पूरी क्षमता तक उपयोग करने में सक्षम होने के लिए, आपको कमांड लाइन के साथ अच्छी तरह से परिचित होना चाहिए और यह जानना चाहिए कि ऑपरेटिंग सिस्टम का समस्या निवारण कैसे करें ताकि यह आपके लिए काम करे, न कि दूसरी तरफ।