लिनक्स में हार्ड और सिम्बोलिक लिंक कैसे बनायें


लिनक्स जैसे यूनिक्स जैसी ऑपरेटिंग सिस्टम में, "सब कुछ एक फाइल है" और एक फाइल मूल रूप से एक इनोड (एक डेटा संरचना जो अपने नाम और वास्तविक सामग्री के अलावा एक फाइल के बारे में सब कुछ संग्रहीत करता है) का एक लिंक है।

एक हार्ड लिंक एक फाइल है जो एक ही अंतर्निहित इनकोड की ओर इशारा करती है, दूसरी फाइल के रूप में। यदि आप एक फ़ाइल को हटाते हैं, तो यह अंतर्निहित इनकोड के एक लिंक को हटा देता है। जबकि एक प्रतीकात्मक लिंक (जिसे सॉफ्ट लिंक के रूप में भी जाना जाता है) फाइलसिस्टम में एक और फ़ाइल नाम के लिए एक लिंक है।

दो प्रकार के लिंक के बीच एक और महत्वपूर्ण अंतर यह है कि हार्ड लिंक केवल एक ही फाइल सिस्टम में काम कर सकते हैं जबकि प्रतीकात्मक लिंक विभिन्न फाइल सिस्टम में जा सकते हैं।

लिनक्स में हार्ड लिंक कैसे बनाये

लिनक्स में एक हार्ड लिंक बनाने के लिए, हम ln यूटिलिटी का उपयोग करेंगे। उदाहरण के लिए, निम्न कमांड फ़ाइल के लिए tp नामक एक कठिन लिंक बनाता है topprocs.sh

$ ls -l
$ ln topprocs.sh tp
$ ls -l

उपरोक्त आउटपुट को देखते हुए, ls कमांड का उपयोग करते हुए, नई फ़ाइल को लिंक के रूप में नहीं दिखाया गया है, इसे एक नियमित फ़ाइल के रूप में दिखाया गया है। इसका तात्पर्य यह है कि tp केवल एक अन्य नियमित निष्पादन योग्य फ़ाइल है जो समान कोड में <कोड> topprocs.sh की ओर इशारा करता है।

किसी हार्ड लिंक को सीधे सॉफ्ट लिंक में बनाने के लिए, -P फ्लैग का उपयोग करें।

$ ln -P topprocs.sh tp

लिनक्स में सिम्बोलिक लिंक कैसे बनायें

लिनक्स में एक प्रतीकात्मक लिंक बनाने के लिए, हम -s स्विच के साथ समान ln यूटिलिटी का उपयोग करेंगे। उदाहरण के लिए, निम्न कमांड फ़ाइल का topps.sh नाम से एक प्रतीकात्मक लिंक बनाता है topprocs.sh

$ ln -s ~/bin/topprocs.sh topps.sh
$ ls -l topps.sh

उपरोक्त आउटपुट से, आप फ़ाइल अनुमति अनुभाग से देख सकते हैं कि topps.sh l: द्वारा इंगित एक लिंक है, जिसका अर्थ है कि यह किसी अन्य फ़ाइल नाम से लिंक है।

यदि प्रतीकात्मक लिंक पहले से मौजूद है, तो आपको ऑपरेशन को बाध्य करने के लिए (प्रतीकात्मक लिंक को बाहर करने के लिए) एक त्रुटि मिल सकती है, -f विकल्प का उपयोग करें।

$ ln -s ~/bin/topprocs.sh topps.sh
$ ln -sf ~/bin/topprocs.sh topps.sh

क्रिया मोड को सक्षम करने के लिए, आउटपुट में प्रत्येक लिंक की गई फ़ाइल का नाम प्रिंट करने के लिए -v ध्वज जोड़ें।

$ ln -sfv ~/bin/topprocs.sh topps.sh
$ $ls -l topps.sh

बस! निम्नलिखित इन संबंधित लेखों की जाँच करें।

  1. fdupes – A Command Line Tool to Find and Delete Duplicate Files in Linux
  2. 5 Useful Commands to Manage File Types and System Time in Linux

इस लेख में, हमने सीखा कि लिनक्स में कठिन और प्रतीकात्मक लिंक कैसे बनाएं। आप नीचे दिए गए फीडबैक फॉर्म के माध्यम से इस गाइड के बारे में कोई भी प्रश्न पूछ सकते हैं या अपने विचार साझा कर सकते हैं।