सॉफ्ट (प्रतीकात्मक) लिंक बनाम हार्ड लिंक

Soft Link Vs Hard Link



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

कड़ी कड़ियाँ

हार्ड लिंक मूल फ़ाइल के पथ वाली फ़ाइल नहीं हैं बल्कि मूल फ़ाइल की दर्पण प्रतियां हैं जो वे इंगित करते हैं। एक फ़ाइल और उसके हार्ड लिंक नाम या पथ से नहीं बल्कि उस इनोड से जुड़े होते हैं जो फ़ाइल पर जानकारी संग्रहीत करता है, जैसे कि यह स्थान, निर्माण तिथि, अनुमतियाँ और अन्य विशेषताएँ। प्रत्येक इनोड संख्या एक फाइल सिस्टम के भीतर अद्वितीय है जो हार्ड लिंक को विभिन्न विभाजन या सिस्टम के बीच काम करने से रोकता है। निर्देशिकाओं को जोड़ने के लिए हार्ड लिंक का उपयोग नहीं किया जा सकता है।







सॉफ्ट लिंक के विपरीत, हार्ड लिंक में वह जानकारी होती है जिससे वे लिंक करते हैं इसलिए यदि मूल फ़ाइल को हटा दिया जाता है तो भी आप इसके डेटा तक पहुंच सकते हैं।



सभी लिनक्स सिस्टम में हार्ड और प्रतीकात्मक दोनों लिंक कमांड के साथ बनाए जाते हैं एलएन . आरंभ करने के लिए पहले एक फाइल बनाएं जिसका नाम है लिनक्सहिंटफाइल और एक निर्देशिका कहा जाता है LinuxHintDirectory जैसा कि नीचे चित्र में दिखाया गया है:



स्पर्शलिनक्सहिंटफाइल
rmkdir LinuxHintDirectory
रास
जड़@लिनक्स संकेत:/घर/लिनक्सहिंट#





टर्मिनल में चलने वाली LinuxHintFile फ़ाइल के लिए Link2LHFile नामक एक हार्ड लिंक बनाने के लिए:

एलएनLinuxHintFile Link2LHFile



के साथ जाँच के बाद रास हम अभी-अभी बनाए गए हार्ड लिंक को देखते हैं, यदि आप ls -i टाइप करते हैं, तो आप फाइलों के इनोड्स देखेंगे, आप पुष्टि कर सकते हैं कि हमारे द्वारा अभी बनाए गए लिंक में मूल फ़ाइल की तुलना में समान इनोड नंबर है, टाइप करें:

रास -मैं

जैसा कि हमने ऊपर कहा, हम निर्देशिकाओं के लिए हार्ड लिंक का उपयोग नहीं कर सकते हैं और न ही अन्य संस्करणों या फाइल सिस्टम के लिंक का उपयोग कर सकते हैं, हम LinuxHintDirectory को एक सॉफ्ट लिंक से लिंक करेंगे।

आप चलाकर कार्यशील निर्देशिका के भीतर हार्ड लिंक पा सकते हैं:

पाना -प्रकारएफ-लिंक+1

आप इस रन के लिए इनोड्स द्वारा फाइलें भी ढूंढ सकते हैं:

पाना.-इनुम <इनोडनंबर>

जैसा कि आप देख सकते हैं कि यह मूल फ़ाइल और हार्ड लिंक दोनों को समान इनोड नंबर साझा करते हुए मिला।

सॉफ्ट लिंक

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

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

कार्यक्रम के साथ प्रतीकात्मक लिंक भी बनाए जाते हैं एलएन , लेकिन लिंक प्रतीकात्मक/सॉफ्ट होने के लिए हमें पैरामीटर निर्दिष्ट करने की आवश्यकता है -एस , निर्देशिका के लिए एक प्रतीकात्मक लिंक बनाने के लिए LinuxHintDirectory जिसे LHDLink रन कहा जाता है:

एलएन -एसLinuxHintDirectory LHDLink

और फिर चलाओ' एलएस -आई ' यह जांचने के लिए कि यह ठीक से बनाया गया था:

जैसा कि हम इस मामले में देखते हैं कि प्रतीकात्मक लिंक बनाया गया था, लेकिन इसकी मूल फ़ाइल की तुलना में एक अलग इनोड संख्या है।

हम कमांड के साथ एक निर्देशिका के भीतर प्रतीकात्मक लिंक सूचीबद्ध कर सकते हैं एलएस -एल

ऊपर की छवि में हम पहली फ़ाइल की अनुमतियों में उपसर्ग देख सकते हैं NS प्रतीकात्मक लिंक के लिए, पंक्ति का अंत यह भी दिखाता है कि प्रतीकात्मक लिंक किस फ़ाइल को इंगित करता है।

मुझे उम्मीद है कि आपको यह लेख हार्ड लिंक और प्रतीकात्मक लिंक के बीच अंतर और उन्हें बनाने के तरीके को समझने में उपयोगी लगा होगा। Linux पर अधिक युक्तियों और अद्यतनों के लिए LinuxHint का अनुसरण करते रहें।