Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रणाली >> Linux

Linux वर्चुअल डायरेक्टरी स्ट्रक्चर को समझना

शुरुआती Linux उपयोगकर्ता सीखने के लिए सूचना के एक विशाल पहाड़ से मिलते हैं। यह टर्मिनल चीज़ क्या है? मैं सॉफ़्टवेयर अपडेट कैसे चलाऊं? मैं कौन सा डिस्ट्रो चुनूं? ये सभी सामान्य प्रश्न हैं। हालांकि, एक प्रश्न है जो अभी भी कई अधिक अनुभवी Linux उपयोगकर्ताओं को परेशान करता है: Linux वर्चुअल डायरेक्टरी सिस्टम में प्रत्येक निर्देशिका में क्या है? यहां हम "/ " से "/boot" तक सब कुछ कवर करते हैं, Linux वर्चुअल डायरेक्टरी सिस्टम के लिए हमारे गाइड में।

Linux वर्चुअल डायरेक्टरी सिस्टम क्या है?

एक वर्चुअल डायरेक्टरी सिस्टम कंप्यूटर ऑपरेटिंग सिस्टम में फ़ाइलों और निर्देशिकाओं को व्यवस्थित करने का एक तरीका है। इसे "वर्चुअल" कहे जाने का कारण यह है कि कोई वास्तविक भौतिक घटक नहीं है - Windows पर, आपके पास आपका "C:" ड्राइव, "D:" ड्राइव, और इसी तरह होते हैं। Linux पर, सभी भौतिक डिस्क को आपकी वर्चुअल डायरेक्टरी सिस्टम में फ़ाइलों के रूप में माना जाता है। यहीं से "सब कुछ एक फ़ाइल है" वाक्यांश आता है। आपके सिस्टम में वह डिस्क भी जिस पर आप अपने ऑपरेटिंग सिस्टम के लिए काम कर रहे हैं, एक फ़ाइल के रूप में मानी जाती है।

वर्चुअल डायरेक्टरी सिस्टम को समझना

रूट निर्देशिका: /

आइए बहुत शुरुआत से शुरू करें। "/" (या "रूट") निर्देशिका वह है जिसमें सिस्टम में सब कुछ होता है। cd / कमांड चलाकर, आप अपने सिस्टम पर जितना संभव हो उतना ज़ूम आउट कर रहे हैं। "/" निर्देशिका में बदलें और ls कमांड चलाएं। आप देखना शुरू कर देंगे कि मेरा क्या मतलब है। "Documents," "Downloads," या "Pictures" के बजाय, आपको "bin," "dev," और "home" जैसी चीजें मिलती हैं। यह आपके डिस्ट्रो के आधार पर थोड़ा अलग होगा, लेकिन कुछ कोर निर्देशिकाएं हैं जो बहुत अधिक हमेशा वहां होंगी। यहां से सभी निर्देशिकाओं की शुरुआत में "/" होगा क्योंकि यह हर चीज की जड़ है - इसलिए नाम "रूट"।

बाइनरी निर्देशिका: /bin

"/bin" निर्देशिका आपके सिस्टम में सभी बाइनरी प्रोग्राम रखती है। यदि आप वहां देखते हैं, तो आप cd और ls जैसे सामान्य कमांड देखेंगे जिनका हम पहले ही उपयोग कर चुके हैं। आप उन्हें which cd या which ls कमांड चलाकर भी ढूंढ सकते हैं। अधिकांश समय आधुनिक डिस्ट्रो पर, "/bin" निर्देशिका "/usr/bin" निर्देशिका से जुड़ी होती है। "/usr" निर्देशिका को बाद में कवर किया गया है, लेकिन संक्षेप में, उनका उपयोग सिस्टम और एडमिनिस्ट्रेटर के लिए बाइनरी को "/bin" निर्देशिका में और सिस्टम उपयोगकर्ताओं को "/usr/bin" में अलग करने के लिए किया जाता है।

बूट निर्देशिका: /boot

"/boot" निर्देशिका वह सभी बुनियादी जानकारी रखती है जिसकी आपके सिस्टम को शुरू होने के लिए आवश्यकता होगी। आपके सिस्टम पर इंस्टॉल किए गए सभी कर्नेल, उन कर्नेल के लिए सभी कॉन्फ़िगरेशन फ़ाइलें, Grub के लिए जानकारी - यह सब। यह एक बहुत महत्वपूर्ण निर्देशिका है, और इसे आपके सिस्टम से अलग EFI सिस्टम पार्टीशन के रूप में माना जाता है। इसलिए जब आप मैन्युअल पार्टीशन बनाते हैं, तो आपको कम से कम "/" और "/boot" को अलग से बनाने की आवश्यकता होती है।

डिवाइस निर्देशिका: /dev

"/dev" निर्देशिका सिस्टम में सभी डिवाइस फ़ाइलों को रखती है, जो आपके सिस्टम पर सभी हार्डवेयर घटक हैं (साथ ही "नल" और "रैंडम" जैसे कुछ अन्य महत्वपूर्ण वर्चुअल डिवाइस)। इसे देखने पर, आप "cpu," "sda," "tty," "stderr," "stdin," और "stdout" जैसी चीजें देखेंगे। ये सभी महत्वपूर्ण डिवाइस फ़ाइलें हैं जिनसे आप दैनिक आधार पर इंटरैक्ट करेंगे।

Etc. निर्देशिका: /etc

यह रैंडम सामान के लिए है। "/etc" निर्देशिका, जिसे Etsy की तरह उच्चारित किया जाता है, वह जगह है जहां आपको अपने सिस्टम में अधिकांश चीजों के लिए कॉन्फ़िगरेशन फ़ाइलें मिलेंगी। SSH, Pipewire, systemD, और Firefox जैसी चीजों के यहां कॉन्फ़िगरेशन फ़ाइलें हैं। यह वर्चुअल डायरेक्टरी सिस्टम का जंक ड्रॉवर है - सुपर महत्वपूर्ण लेकिन इसमें चीजें ढूंढना थोड़ा बोझिल।

होम निर्देशिका: /home

"/home" निर्देशिका उपयोगकर्ताओं के लिए सभी व्यक्तिगत फ़ाइलों को रखती है। जब एक उपयोगकर्ता बनाया जाता है, तो उन्हें आमतौर पर एक "/home" निर्देशिका दी जाती है और केवल उनकी "/home" निर्देशिका में फ़ाइलों को संपादित करने की अनुमति दी जाती है। कुछ उपयोगकर्ताओं को एडमिन अधिकार भी दिए जाते हैं, जो sudo आपको देता है, लेकिन यह सिर्फ रूट उपयोगकर्ता के अधिकारों को मान रहा है। यदि आप whoami और sudo whoami को क्रमिक रूप से चलाते हैं, तो आप इसे देखना शुरू कर देंगे। यह वह निर्देशिका है जिससे आप संभवतः सबसे अधिक परिचित हैं।

लाइब्रेरी निर्देशिका: /lib, /lib32, और /lib64

"/lib" निर्देशिकाओं में सभी विशिष्ट लाइब्रेरी होती हैं जिनका उपयोग "/bin" या "/sbin" (बाद में कवर किया गया) में प्रोग्राम करेंगे। यह वह जगह है जहां फर्मवेयर संग्रहीत होता है, साथ ही कर्नेल के विभिन्न हिस्सों और कर्नेल मॉड्यूल को इंस्टॉल करने के लिए अन्य लाइब्रेरी। बहन निर्देशिकाएं "/lib32" और "/lib64" में केवल 32-बिट और 64-बिट ऑपरेटिंग सिस्टम के लिए संस्करण होते हैं और बेस "/lib" निर्देशिका के लगभग समान होते हैं।

मीडिया निर्देशिका: /media और /mnt

मैं इन्हें एक साथ ग्रुप कर रहा हूं क्योंकि वे अक्सर एक ही उद्देश्य की पूर्ति करते हैं। "/media" निर्देशिका वह जगह है जहां CD, DVD, या अन्य रिमूवेबल मीडिया की सामग्री संग्रहीत होती है। यदि मैं एक USB ड्राइव प्लग इन करता हूं, तो आप इसे अधिकांश सिस्टम पर "/media" में पॉप अप होते देखेंगे।

"/mnt" निर्देशिका लंबी अवधि के माउंट के लिए उपयोग की जाती है। उदाहरण के लिए, यदि मैं अपने सिस्टम में एक और SSD जोड़ता, तो मैं इसके लिए "/mnt" निर्देशिका में एक स्थायी माउंट पॉइंट सेट कर सकता था। या, यदि मेरे घर में एक NAS है, तो मैं उस जानकारी को "/mnt" निर्देशिका में भी माउंट कर सकता था।

/opt

"/opt" निर्देशिका उपयोगकर्ता द्वारा उपयोग के लिए अतिरिक्त सॉफ़्टवेयर पैकेज रखती है। यह आपके विचार से बहुत छोटा है - मेरा केवल Brave, Google Chrome, और Sublime Text के लिए फ़ाइलों को रखता है। यदि आप किसी सॉफ़्टवेयर के लिए एक रिपॉजिटरी जोड़ते हैं, तो आप शायद उसे "/opt" में पाएंगे।

/proc

"/proc" निर्देशिका हार्डवेयर जानकारी और चल रही प्रक्रिया जानकारी रखती है। जैसे-जैसे सिस्टम यह पता लगाता है कि हार्डवेयर परिदृश्य कैसा दिखता है, वह "/proc" निर्देशिका में संग्रहीत हो जाएगा। उदाहरण के लिए, यदि आप कमांड cat /proc/cpuinfo चलाते हैं, तो आप अपने CPU के बारे में जितना आपने कभी सोचा था उससे अधिक जानेंगे।

/root

यह सिर्फ रूट उपयोगकर्ता का "/home" निर्देशिका का संस्करण है। यदि आप रूट उपयोगकर्ता के रूप में बहुत काम करते हैं, तो आपको वहां सामान मिलेगा।

/run

"/run" निर्देशिका कुछ हद तक "/proc" के समान है - बस हार्डवेयर के बजाय, "/run" सॉफ़्टवेयर पर केंद्रित है। दोनों जिसे "वाष्पशील रनटाइम डेटा" कहा जाता है उसे संग्रहीत करते हैं, जिसका अर्थ है कि ये निर्देशिकाएं हर बार सिस्टम रीबूट होने पर बहुत अधिक साफ हो जाती हैं, लेकिन वे उपयोगी सामान संग्रहीत करती हैं जैसे OS आपके सिस्टम और आप इसके लिए क्या उपयोग कर रहे हैं इसके बारे में अधिक सीखता है।

/sbin

"/sbin" निर्देशिका बाइनरी प्रोग्राम रखती है जिन्हें केवल रूट उपयोगकर्ता के लिए उपलब्ध कराया जाना चाहिए। उदाहरण के लिए, वह बाइनरी प्रोग्राम जो आपके सिस्टम को पावर ऑफ करता है (poweroff) शायद "/sbin" में रहना चाहिए।

/srv

यह वह निर्देशिका है जो आपके द्वारा चलाई जा रही वेब-एक्सेसिबल सेवाओं के आधार पर साइट-विशिष्ट डेटा रखती है। FTP और HTTP जैसी चीजों की यहां विशिष्ट जानकारी संग्रहीत होगी। मैं कोई नहीं चला रहा, इसलिए मेरा "/srv" निर्देशिका खाली है।

/sys

"/sys" निर्देशिका सिस्टम में प्रमुख उपकरणों की जानकारी रखती है। मेरे में, आप "/sys/dev," "/sys/firmware," और "/sys/kernel" जैसी चीजें देखेंगे। यह "/dev" निर्देशिका में सुपर महत्वपूर्ण हार्डवेयर डिवाइस का एक चेरी-पिकिंग है।

/tmp

"/tmp" निर्देशिका आपके सिस्टम पर विभिन्न प्रोग्राम से अस्थायी जानकारी संग्रहीत करने के लिए उपयोग की जाती है। जानकारी यहां बिना रीबूट के केवल कुछ दिनों के लिए संग्रहीत होती है, इसलिए यह अन्य स्टोरेज स्पेस को खाली रखने के लिए जानकारी पर केवल अस्थायी लॉक है। अधिकांश उपयोगकर्ताओं को "/tmp" निर्देशिका के साथ कभी भी बहुत कुछ करने की आवश्यकता नहीं होगी।

/usr

"/usr" निर्देशिका अधिक से अधिक आमतौर पर छूई जा रही है। अब, "/bin," "/lib," और "/sbin" जैसी निर्देशिकाएं "/usr" में उन निर्देशिकाओं के संस्करणों से जुड़ी हुई हैं। आप देख सकते हैं कि जब मैं अपने सिस्टम पर ll कमांड चलाता हूं।

वे सॉफ्ट लिंक हैं, इसलिए उन्हें अनलिंक किया जा सकता है, लेकिन सिस्टम "/usr/bin" या "/usr/sbin" निर्देशिकाओं से पढ़ना समाप्त करता है, बजाय "/bin" या "/sbin" निर्देशिकाओं के। यह सब मौजूद पदानुक्रम को सरल बनाने और इन प्रोग्राम को ढूंढना सरल बनाने के लिए किया जाता है। यह एक अच्छी क्वालिटी-ऑफ-लाइफ चीज है जो Linux से Unix पर स्विच करना या अलग-अलग बाइनरी के लिए निश्चित स्थान न होना आसान बनाता है।

/var

"/var" निर्देशिका "/tmp" निर्देशिका के समान है, लेकिन यह डेटा को थोड़ी देर अधिक समय तक रखती है। यह लॉग फ़ाइलों और KVM वर्चुअल मशीन डिस्क छवियों जैसी चीजों को भी संग्रहीत करता है।

जैसा कि आप देख सकते हैं, Linux वर्चुअल डायरेक्टरी सिस्टम का उद्देश्य उन फ़ाइलों को व्यवस्थित करना है जिनका आपका सिस्टम उपयोग करेगा और आपके सिस्टम को प्रशासित और प्रबंधित करना सरल बनाना है। जाहिर है, आप इस सिस्टम के साथ जो चाहें कर सकते हैं (यही Linux की सुंदरता है), लेकिन चीजों को वैसे ही छोड़ना अधिकांश डेस्कटॉप उपयोगकर्ताओं के लिए ठीक और अच्छा है। आप यह भी जानना चाहेंगे कि 2021 में Linux के लिए कौन सा फाइलसिस्टम सबसे अच्छा है।

  1. लिनक्स में सिस्टम संसाधनों की जांच के लिए 4 सर्वश्रेष्ठ सिस्टम मॉनिटर लिनक्स में सिस्टम संसाधनों की जांच के लिए 4 सर्वश्रेष्ठ सिस्टम मॉनिटर

    लिनक्स के सबसे महान पहलुओं में से एक यह है कि यह सिस्टम संसाधन उपयोग के मामले में कितना कुशल है। हालांकि, ऐसे बहुत से समय होते हैं जब आप अपने लिनक्स सिस्टम पर कर लगा सकते हैं, जैसे बड़े कोडबेस को संकलित करना, कई वर्चुअल मशीन चलाना, गहन वीडियो गेम खेलना, या 4K वीडियो संपादित करना। इन स्थितियों में,

  1. नए उपयोगकर्ताओं के लिए 6 सबसे उपयोगी लिनक्स कमांड्स नए उपयोगकर्ताओं के लिए 6 सबसे उपयोगी लिनक्स कमांड्स

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

  1. वर्चुअल रियलिटी बनाम ऑगमेंटेड रियलिटी: मुख्य अंतरों के लिए स्पष्ट गाइड वर्चुअल रियलिटी बनाम ऑगमेंटेड रियलिटी: मुख्य अंतरों के लिए स्पष्ट गाइड

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