लिनक्समध्ये हार्ड लिंक आणि सॉफ्ट लिंकमध्ये काय फरक आहे?

Posted on Wed 22 June 2022 in लिनक्स

हार्ड लिंक हे मूळ फाइलसाठी अतिरिक्त नाव आहे जे आयनोडद्वारे लक्ष्य फाइलचा संदर्भ देते. दुसरीकडे, सॉफ्ट लिंक ही मूळ फाईलपेक्षा वेगळी आहे आणि त्यासाठी पर्यायी आहे, परंतु ती आयनोड वापरत नाही. लक्ष्य फाइल हटविली गेली तरीही हार्ड लिंक वैध राहते.

हार्डलिंक्स आम्हाला आमची फाइल सिस्टम अधिक लवचिक पद्धतीने व्यवस्थापित करण्यात मदत करतात. मूलभूतपणे, हार्डलिंक्स आम्हाला एक फाईल घेण्यास आणि ती एकाच वेळी फाइल सिस्टममध्ये अनेक ठिकाणी ठेवण्याची परवानगी देतात.

सॉफ्ट लिंकमध्ये मूळ फाईलचा मार्ग आहे आणि सामग्री नाही. सॉफ्ट लिंक काढून टाकल्याने काहीही परिणाम होत नाही परंतु मूळ फाईल काढून टाकल्यास, लिंक "लटकणारी" लिंक बनते जी अस्तित्वात नसलेल्या फाइलकडे निर्देश करते. सॉफ्ट लिंक डिरेक्टरीला लिंक करू शकते.

एक प्रतीकात्मक दुवा, ज्याला सॉफ्ट लिंक देखील म्हणतात, ही एक विशेष प्रकारची फाईल आहे जी दुसर्‍या फाईलकडे निर्देश करते, अगदी Windows मधील शॉर्टकट किंवा Macintosh उर्फ. हार्ड लिंकच्या विपरीत, प्रतिकात्मक दुव्यामध्ये लक्ष्य फाइलमधील डेटा नसतो. हे फक्त फाइल सिस्टममध्ये कुठेतरी दुसर्या एंट्रीकडे निर्देश करते.

शेवटी, हार्ड लिंक्स आणि सॉफ्ट लिंक्समधील फरक अगदी सोपा आहे. तुम्ही फाइल डिलीट करता तेव्हा हार्ड लिंक्स अधिक क्षमाशील असतात, सॉफ्ट लिंक्स कमी डेटा घेतात कारण ते फक्त मार्ग दाखवते. तथापि, सॉफ्ट लिंक्स वास्तविक डेटा संचयित करत नाहीत, ते फक्त मूळ फाइलचे स्थान संचयित करतात.

हार्ड लिंक आणि सिम्बॉलिक लिंकमधील फरक पाहण्याचा एक सोपा मार्ग म्हणजे एका साध्या उदाहरणाद्वारे. फाईलची हार्ड लिंक फाईल जिथे संग्रहित आहे त्या ठिकाणी किंवा त्या फाइलच्या आयनोडकडे निर्देश करेल. एक प्रतिकात्मक दुवा वास्तविक फाइलकडे निर्देश करेल.

तुम्हाला तुमच्या फाइल सिस्टीममध्ये एकापेक्षा जास्त ठिकाणी फाइल असण्याची आवश्यकता असल्यास, किंवा तुमची मूळ फाइल इकडे तिकडे हलवली जात असल्यास, किंवा ती मोठी फाइल असेल ज्यावर तुम्हाला त्वरीत काम करण्याची आवश्यकता असल्यास, हार्ड लिंक वापरणे चांगले आहे.

होय. ते दोघेही जागा घेतात कारण त्यांच्याकडे अद्याप निर्देशिका नोंदी आहेत. हार्डलिंक एंट्री (खरोखर, "सामान्य एंट्री" जी [अनेकदा] आयनोड सामायिक करते) जागा घेते, तसेच सिमलिंक एंट्री ज्याने लिंक पथ (मजकूर स्वतः) कसा तरी संग्रहित केला पाहिजे.

हार्ड लिंक ही एक फाईल आहे जी दुसर्‍या फाईलप्रमाणे समान अंतर्निहित इनोडकडे निर्देश करते. तुम्ही एखादी फाइल हटवल्यास, ती अंतर्निहित इनोडची एक लिंक काढून टाकते. तर प्रतिकात्मक दुवा (ज्याला सॉफ्ट लिंक असेही म्हणतात) ही फाईल सिस्टीममधील दुसर्‍या फाइलनावाची लिंक असते.

हार्ड-लिंकिंग डिरेक्टरींना परवानगी नसण्याचे कारण थोडे तांत्रिक आहे. मूलत:, ते फाइल-सिस्टम संरचना खंडित करतात. तरीही तुम्ही साधारणपणे हार्ड लिंक वापरू नये. प्रतिकात्मक दुवे समस्या निर्माण न करता समान कार्यक्षमतेला अनुमती देतात (उदा. ln -s target link ).