लिनक्स में शॉर्टकट नहीं होते, लेकिन इसमें सिम्बोलिक लिंक्स होते हैं - जिन्हें आमतौर पर सिमलिंक्स कहा जाता है। लेकिन सिम्बोलिक लिंक्स वास्तव में क्या हैं? और आप एक कैसे बनाते हैं? आइए पता लगाते हैं।
हम उबंटू इंस्टॉलेशन पर कमांड आज़माएंगे, हालांकि सिंटैक्स सभी लिनक्स डिस्ट्रो पर समान रूप से काम करता है। दिलचस्प बात यह है कि सिमलिंक्स को मैक पीसी पर भी बनाया जा सकता है।
सिम्बोलिक लिंक्स क्या हैं?
यदि आप किसी फाइल को कई स्थानों से एक्सेस करना चाहते हैं, तो उसे केवल कॉपी करना अच्छा समाधान नहीं है। आप डिस्क स्पेस बर्बाद कर रहे हैं, और कई फाइलें होने के कारण परिवर्तनों को ट्रैक करना भी मुश्किल हो जाता है।
GUI-आधारित ऑपरेटिंग सिस्टम में, आप शॉर्टकट बनाकर इस समस्या से निपटते हैं। CUI-आधारित OS (किसी भी लिनक्स डिस्ट्रो की तरह) के लिए, उत्तर एक सिमलिंक है। यहां तक कि माइक्रोसॉफ्ट विंडोज भी कुछ स्थितियों में सिमलिंक्स का लाभ उठा सकता है।
एक सिमलिंक या सिम्बोलिक लिंक बस एक फाइल है जो किसी अन्य फाइल या डायरेक्टरी को इंगित करती है - यहां तक कि पूरी तरह से अलग फाइल सिस्टम या पार्टीशन में भी। सिमलिंक खोलने से आपको मूल फाइल तक वही एक्सेस मिलता है, जिसमें कोई भी परिवर्तन मुख्य फाइल में भी परिलक्षित होता है।
यह अनुमतियों के लिए भी लागू होता है - सिमलिंक फाइल की अनुमतियों को बदलने के लिए chmod का उपयोग करने से वास्तव में लक्ष्य फाइल की अनुमतियां संशोधित होती हैं।
सिमलिंक्स के प्रकार
सिम्बोलिक लिंक्स को सॉफ्ट लिंक्स के रूप में भी जाना जाता है। जैसा कि नाम से पता चल सकता है, यह लिनक्स पर फाइल-लिंकिंग सिस्टम का एकमात्र प्रकार नहीं है। हार्ड लिंक्स का उपयोग कुछ परिदृश्यों में सिमलिंक्स के विकल्प के रूप में किया जा सकता है, हालांकि कई प्रतिबंधों के साथ।
शुरुआत के लिए, हार्ड लिंक्स केवल फाइल नाम हैं जो एक ही इनोड को इंगित करते हैं। जबकि यह उन्हें स्टोरेज और एक्सेस स्पीड के मामले में बहुत कुशल बनाता है, यह उन्हें उसी फाइल सिस्टम या पार्टीशन की फाइलों तक सीमित भी करता है। और लिनक्स में फोल्डर एक्सेस कैसे काम करता है इसकी एक विचित्रता के कारण, आप डायरेक्टरीज के लिए हार्ड लिंक्स का उपयोग नहीं कर सकते।
दूसरी ओर, सॉफ्ट लिंक्स या सिम्बोलिक लिंक्स, डेस्कटॉप शॉर्टकट की तरह अधिक हैं। प्रत्येक सॉफ्ट लिंक अनिवार्य रूप से एक छोटी फाइल है जो मूल डेटा को इंगित करती है, बिना सीधे उससे जुड़े हुए। इसका मतलब है कि सॉफ्ट लिंक्स बिना किसी प्रतिबंध के अन्य पार्टीशन और फाइल सिस्टम पर फाइलों और डायरेक्टरीज को आसानी से इंगित कर सकते हैं।
हार्ड लिंक्स बनाम सॉफ्ट लिंक्स - किस प्रकार का उपयोग करें?
सॉफ्ट लिंक्स लिंक का सबसे बहुमुखी रूप हैं क्योंकि उनका उपयोग कई फाइल सिस्टम पर फाइलों और डायरेक्टरीज दोनों पर बिना किसी प्रतिबंध के किया जा सकता है। लेकिन फिर हमारे पास हार्ड लिंक्स क्यों हैं? क्या वे सिमलिंक्स पर कोई लाभ प्रदान करते हैं?
कागज पर, हार्ड लिंक्स अधिक कुशल हैं। क्योंकि वे एक ही इनोड्स का उपयोग करते हैं, वे अतिरिक्त डिस्क स्पेस नहीं लेते और सॉफ्ट लिंक्स की तुलना में बहुत तेजी से एक्सेस किए जा सकते हैं। यही कारण है कि कई सिस्टम एडमिनिस्ट्रेटर जब भी संभव हो हार्ड लिंक्स का उपयोग करने की सलाह देते हैं।
उस ने कहा, हालांकि, सिम्बोलिक लिंक्स का उपयोग करने के नुकसान न्यूनतम हैं। आधुनिक कंप्यूटर विशेष रूप से कुछ किलोबाइट अतिरिक्त स्टोरेज की परवाह नहीं करते, और जब तक आप सिस्टम को लाखों सॉफ्ट लिंक्स से नहीं भर रहे, अतिरिक्त फाइल साइज़ शायद ही मायने रखती है।
सिम्बोलिक लिंक्स बनाना
सिम्बोलिक लिंक्स - या बल्कि, सामान्य रूप से फाइल लिंक्स - ln कमांड का उपयोग करके बनाए जाते हैं। डिफ़ॉल्ट रूप से, कमांड हार्ड लिंक्स बनाती है। एक सिम्बोलिक लिंक बनाने के लिए, आपको ln कमांड में -s फ्लैग जोड़ना होगा।
सिंटैक्स काफी सरल है। ln कमांड दो पैरामीटर लेती है - लिंक की जाने वाली फाइल (या फोल्डर) का पथ, और बनाई जाने वाली लिंक फाइल का पथ।
इस तरह:
ln -s user_names.txt names
यह names नामक एक सिमलिंक बनाएगा जो user_names टेक्स्ट फाइल से जुड़ा होगा। यह देखने के लिए कि सिम्बोलिक लिंक वास्तव में बनाया गया था या नहीं, बस ls कमांड का उपयोग करें।
जैसा कि आप देख सकते हैं, उबंटू फाइलों की विभिन्न श्रेणियों के लिए अलग-अलग रंग दिखाता है, जिसमें डायरेक्टरीज गहरे नीले रंग से और सिमलिंक्स हल्के नीले रंग (सियान, वास्तव में) से दर्शाए गए हैं।
हम फोल्डर के लिए सिमलिंक बनाने के लिए भी उसी सिंटैक्स का उपयोग कर सकते हैं:
ln -s examples example_folder
अन्य डायरेक्टरीज में फाइलों और फोल्डर्स के लिए सिमलिंक्स बनाने के लिए, बस उनका पूर्ण पथ उपयोग करें। उदाहरण के लिए:
ln -s examples/example3.txt distant_example
सिमलिंक्स की सीमाएं
सिम्बोलिक लिंक्स अपने सिस्टम में फाइलों को जोड़ने का एक शानदार तरीका है, बिना कॉपी बनाने का सहारा लिए, लेकिन उनकी अपनी सीमाएं हैं। हां, भले ही सॉफ्ट लिंक्स हार्ड लिंक्स की तुलना में कम प्रतिबंधात्मक हैं, फिर भी कुछ बातों का ध्यान रखना चाहिए।
पहला, ln कमांड वास्तव में बनाए गए लिंक्स को वेरिफाई नहीं करती। इसका मतलब है कि एक ऐसा फाइल नाम दर्ज करना संभव है जो वास्तव में मौजूद नहीं है, और आपको कोई त्रुटि नहीं मिलेगी। लिंक की पुष्टि करने का एकमात्र तरीका है उसे उपयोग करने का प्रयास करना और देखना कि क्या वह सही फाइल तक ले जाता है।
दूसरा, जबकि सिमलिंक को एक्सेस करने या उसकी अनुमतियों को बदलने से मूल फाइल के गुण बदल जाते हैं, फाइल डिलीशन के लिए ऐसा नहीं होता। आप लिंक की गई फाइल या डायरेक्टरी को प्रभावित किए बिना सिम्बोलिक लिंक को सुरक्षित रूप से हटा सकते हैं।
लिनक्स में सिमलिंक्स बनाना
सिम्बोलिक लिंक्स बनाने के लिए टर्मिनल का उपयोग करने में सबसे बड़ी परेशानी विभिन्न डायरेक्टरीज में फैली महत्वपूर्ण फाइलों तक पहुंचने में कठिनाई है। स्मार्ट समाधान है अपने होम डायरेक्टरी से ही ऐसी फाइलों के लिए सिम्बोलिक लिंक्स बनाना, जैसे डेस्कटॉप शॉर्टकट।
और हार्ड लिंक्स के विपरीत, सिमलिंक्स को आसानी से बिना किसी प्रतिबंध के बनाया जा सकता है, यहां तक कि अलग पार्टीशन और फाइल सिस्टम में डायरेक्टरीज या फाइलों से कनेक्ट करने के लिए भी। ध्यान रखें कि इसका मतलब यह भी है कि एक सिमलिंक किसी गैर-मौजूद फाइल को इंगित कर सकता है - आपको लिंक को एक्सेस करके यह सत्यापित करना होगा कि फाइल मौजूद है या नहीं।