പതിവ് ചോദ്യം: ലിനക്സിലെ ഹാർഡ് ലിങ്ക് എന്താണ്?

ഉള്ളടക്കം

മറ്റൊരു ഫയലിന്റെ അതേ അണ്ടർലൈയിംഗ് ഐനോഡിലേക്ക് പോയിന്റ് ചെയ്യുന്ന ഫയലാണ് ഹാർഡ് ലിങ്ക്. നിങ്ങൾ ഒരു ഫയൽ ഇല്ലാതാക്കുകയാണെങ്കിൽ, അത് അടിസ്ഥാന ഐനോഡിലേക്കുള്ള ഒരു ലിങ്ക് നീക്കം ചെയ്യുന്നു. ഒരു പ്രതീകാത്മക ലിങ്ക് (സോഫ്റ്റ് ലിങ്ക് എന്നും അറിയപ്പെടുന്നു) ഫയൽസിസ്റ്റത്തിലെ മറ്റൊരു ഫയൽനാമത്തിലേക്കുള്ള ഒരു ലിങ്കാണ്.

കമ്പ്യൂട്ടിംഗിൽ, ഒരു ഫയൽ സിസ്റ്റത്തിലെ ഫയലുമായി ഒരു പേരിനെ ബന്ധപ്പെടുത്തുന്ന ഒരു ഡയറക്ടറി എൻട്രിയാണ് ഹാർഡ് ലിങ്ക്. എല്ലാ ഡയറക്‌ടറി അധിഷ്‌ഠിത ഫയൽ സിസ്റ്റങ്ങൾക്കും ഓരോ ഫയലിനും ഒറിജിനൽ പേര് നൽകുന്ന ഒരു ഹാർഡ് ലിങ്കെങ്കിലും ഉണ്ടായിരിക്കണം. ഒരേ ഫയലിനായി ഒന്നിലധികം ഹാർഡ് ലിങ്കുകൾ അനുവദിക്കുന്ന ഫയൽ സിസ്റ്റങ്ങളിൽ മാത്രമാണ് "ഹാർഡ് ലിങ്ക്" എന്ന പദം സാധാരണയായി ഉപയോഗിക്കുന്നത്.

ലിനക്സിലെ സോഫ്റ്റ് ലിങ്കും ഹാർഡ് ലിങ്കും എന്താണ്? ഒരു പ്രതീകാത്മക അല്ലെങ്കിൽ സോഫ്റ്റ് ലിങ്ക് യഥാർത്ഥ ഫയലിലേക്കുള്ള യഥാർത്ഥ ലിങ്കാണ്, അതേസമയം ഹാർഡ് ലിങ്ക് യഥാർത്ഥ ഫയലിന്റെ മിറർ പകർപ്പാണ്. നിങ്ങൾ യഥാർത്ഥ ഫയൽ ഇല്ലാതാക്കുകയാണെങ്കിൽ, സോഫ്റ്റ് ലിങ്കിന് മൂല്യമില്ല, കാരണം അത് നിലവിലില്ലാത്ത ഫയലിലേക്ക് വിരൽ ചൂണ്ടുന്നു.

If you delete the ‘my-hard-link’ of a hard link, the remaining files pointing to that same space (inode) in the hard drive will still contain the data stored on the hard drive.

അത് ചൂണ്ടിക്കാണിക്കുന്ന യഥാർത്ഥ ഫയലിന്റെ കൃത്യമായ പകർപ്പാണ് ഹാർഡ് ലിങ്ക്. ഹാർഡ് ലിങ്കും ലിങ്ക് ചെയ്ത ഫയലും ഒരേ ഐനോഡ് പങ്കിടുന്നു. സോഴ്സ് ഫയൽ ഇല്ലാതാക്കിയാൽ, ഹാർഡ് ലിങ്ക് ഇപ്പോഴും പ്രവർത്തിക്കുന്നു, ഫയലിലേക്കുള്ള ഹാർഡ് ലിങ്കുകളുടെ എണ്ണം 0 (പൂജ്യം) ആകുന്നത് വരെ നിങ്ങൾക്ക് ഫയൽ ആക്സസ് ചെയ്യാൻ കഴിയും.

ഒരു പ്രതീകാത്മക ലിങ്ക് സൃഷ്ടിക്കുന്നതിന് Linux -s ഓപ്ഷൻ ഉപയോഗിച്ച് ln കമാൻഡ് ഉപയോഗിക്കുക. ln കമാൻഡിനെ കുറിച്ചുള്ള കൂടുതൽ വിവരങ്ങൾക്ക്, ln man പേജ് സന്ദർശിക്കുക അല്ലെങ്കിൽ നിങ്ങളുടെ ടെർമിനലിൽ man ln എന്ന് ടൈപ്പ് ചെയ്യുക. നിങ്ങൾക്ക് എന്തെങ്കിലും ചോദ്യങ്ങളോ ഫീഡ്‌ബാക്കോ ഉണ്ടെങ്കിൽ, ഒരു അഭിപ്രായം രേഖപ്പെടുത്താൻ മടിക്കേണ്ടതില്ല.

സമാന ഗുണങ്ങളുള്ള രണ്ട് ഫയലുകൾ നിങ്ങൾ കണ്ടെത്തുകയും അവ ഹാർഡ്-ലിങ്ക്ഡ് ആണോ എന്ന് ഉറപ്പില്ലെങ്കിൽ, inode നമ്പർ കാണുന്നതിന് ls -i കമാൻഡ് ഉപയോഗിക്കുക. ഹാർഡ്-ലിങ്ക് ചെയ്‌തിരിക്കുന്ന ഫയലുകൾ ഒരേ ഐനോഡ് നമ്പർ പങ്കിടുന്നു. പങ്കിട്ട ഐനോഡ് നമ്പർ 2730074 ആണ്, അതായത് ഈ ഫയലുകൾ ഒരേ ഡാറ്റയാണ്.

ഒരു Linux അല്ലെങ്കിൽ Unix പോലുള്ള സിസ്റ്റത്തിൽ ഹാർഡ് ലിങ്കുകൾ സൃഷ്ടിക്കാൻ:

  1. sfile1file, link1file എന്നിവയ്ക്കിടയിൽ ഹാർഡ് ലിങ്ക് സൃഷ്ടിക്കുക, പ്രവർത്തിപ്പിക്കുക: ln sfile1file link1file.
  2. ഹാർഡ് ലിങ്കുകൾക്ക് പകരം പ്രതീകാത്മക ലിങ്കുകൾ നിർമ്മിക്കാൻ, ഉപയോഗിക്കുക: ln -s ഉറവിട ലിങ്ക്.
  3. ലിനക്സിൽ സോഫ്റ്റ് അല്ലെങ്കിൽ ഹാർഡ് ലിങ്കുകൾ പരിശോധിക്കാൻ, പ്രവർത്തിപ്പിക്കുക: ls -l സോഴ്സ് ലിങ്ക്.

16 кт. 2018 г.

4 ഉത്തരങ്ങൾ. ഈ പോസ്റ്റിൽ പ്രവർത്തനം കാണിക്കുക. നിങ്ങൾക്ക് ഇത് സാധാരണ പോലെ rm ഉപയോഗിച്ച് ഇല്ലാതാക്കാം: rm NameOfFile . ഹാർഡ് ലിങ്കുകളിൽ "ഒറിജിനൽ ഫയൽ", "ഫയലിലേക്കുള്ള ലിങ്ക്" എന്നിവ തമ്മിൽ യാതൊരു വ്യത്യാസവുമില്ല എന്നത് ശ്രദ്ധിക്കുക: ഒരേ ഫയലിന് നിങ്ങൾക്ക് രണ്ട് പേരുകൾ മാത്രമേയുള്ളൂ, കൂടാതെ പേരുകളിൽ ഒന്ന് മാത്രം ഇല്ലാതാക്കുന്നത് മറ്റൊന്നിനെ ഇല്ലാതാക്കില്ല.

നിങ്ങളുടെ Linux ഫയൽ സിസ്റ്റത്തിൽ, ഒരു ഫയലിന്റെ പേരും ഡിസ്കിലെ യഥാർത്ഥ ഡാറ്റയും തമ്മിലുള്ള ബന്ധമാണ് ലിങ്ക്. രണ്ട് പ്രധാന തരത്തിലുള്ള ലിങ്കുകൾ സൃഷ്ടിക്കാൻ കഴിയും: "ഹാർഡ്" ലിങ്കുകൾ, "സോഫ്റ്റ്" അല്ലെങ്കിൽ പ്രതീകാത്മക ലിങ്കുകൾ. … ഒരു പ്രതീകാത്മക ലിങ്ക് എന്നത് മറ്റൊരു ഫയലിലേക്കോ ഡയറക്ടറിയിലേക്കോ ചൂണ്ടിക്കാണിക്കുന്ന ഒരു പ്രത്യേക ഫയലാണ്, അതിനെ ടാർഗെറ്റ് എന്ന് വിളിക്കുന്നു.

അതെ. രണ്ടിനും ഇപ്പോഴും ഡയറക്ടറി എൻട്രികൾ ഉള്ളതിനാൽ അവ രണ്ടും ഇടം പിടിക്കുന്നു.

ഒരു ഫയൽ [ -L ഫയൽ ] ഉള്ള ഒരു സിംലിങ്ക് ആണോ എന്ന് നിങ്ങൾക്ക് പരിശോധിക്കാം. അതുപോലെ, ഒരു ഫയൽ [ -f ഫയൽ ] ഉള്ള ഒരു സാധാരണ ഫയലാണോ എന്ന് നിങ്ങൾക്ക് പരിശോധിക്കാൻ കഴിയും, എന്നാൽ ആ സാഹചര്യത്തിൽ, സിംലിങ്കുകൾ പരിഹരിച്ചതിന് ശേഷമാണ് പരിശോധന നടത്തുന്നത്. ഹാർഡ്‌ലിങ്കുകൾ ഒരു തരം ഫയലല്ല, അവ ഒരു ഫയലിന്റെ വ്യത്യസ്ത പേരുകളാണ് (ഏത് തരത്തിലും).

To remove a symbolic link, use either the rm or unlink command followed by the name of the symlink as an argument. When removing a symbolic link that points to a directory do not append a trailing slash to the symlink name. If you have any questions or feedback, feel free to leave a comment.

ഹാർഡ് ലിങ്കുകളും പ്രതീകാത്മക ലിങ്കുകളും ഹാർഡ് ഡ്രൈവിലെ ഒരു ഫയലിനെ പരാമർശിക്കുന്നതിനുള്ള രണ്ട് വ്യത്യസ്ത രീതികളാണ്. … ഒരു ഹാർഡ് ലിങ്ക് അടിസ്ഥാനപരമായി ഒരു ഫയലിന്റെ ഐനോഡിനെ നേരിട്ട് സൂചിപ്പിക്കുന്ന ഒരു ഫയലിന്റെ സമന്വയിപ്പിച്ച കാർബൺ പകർപ്പാണ്. മറുവശത്ത് പ്രതീകാത്മക ലിങ്കുകൾ ഒരു കുറുക്കുവഴിയായ ഐനോഡിനെ സൂചിപ്പിക്കുന്ന ഫയലിനെ നേരിട്ട് റഫർ ചെയ്യുന്നു.

ഒരു ഫയൽ മാനേജറിലെ പ്രോഗ്രാം ഡയറക്ടറി, അത് /mnt/partition/ എന്നതിനുള്ളിലെ ഫയലുകൾ അടങ്ങിയിരിക്കുന്നതായി കാണപ്പെടും. പ്രോഗ്രാം. "സിംബോളിക് ലിങ്കുകൾ" കൂടാതെ, "സോഫ്റ്റ് ലിങ്കുകൾ" എന്നും അറിയപ്പെടുന്നു, പകരം നിങ്ങൾക്ക് ഒരു "ഹാർഡ് ലിങ്ക്" സൃഷ്ടിക്കാൻ കഴിയും. ഒരു പ്രതീകാത്മക അല്ലെങ്കിൽ സോഫ്റ്റ് ലിങ്ക് ഫയൽ സിസ്റ്റത്തിലെ ഒരു പാതയിലേക്ക് വിരൽ ചൂണ്ടുന്നു.

ഹാർഡ്-ലിങ്കിംഗ് ഡയറക്‌ടറികൾ അനുവദിക്കാത്തതിൻ്റെ കാരണം ഒരു ചെറിയ സാങ്കേതികതയാണ്. അടിസ്ഥാനപരമായി, അവ ഫയൽ-സിസ്റ്റം ഘടനയെ തകർക്കുന്നു. എന്തായാലും നിങ്ങൾ പൊതുവെ ഹാർഡ് ലിങ്കുകൾ ഉപയോഗിക്കരുത്. സിംബോളിക് ലിങ്കുകൾ പ്രശ്‌നങ്ങൾ ഉണ്ടാക്കാതെ തന്നെ മിക്ക പ്രവർത്തനങ്ങളും അനുവദിക്കുന്നു (ഉദാ: ln -s ടാർഗെറ്റ് ലിങ്ക് ).

ഈ പോസ്റ്റ് ഇഷ്ടമാണോ? നിങ്ങളുടെ ചങ്ങാതിമാരുമായി പങ്കിടുക:
ഒഎസ് ടുഡേ