Zachte (symbolische) link versus harde link

Soft Link Vs Hard Link



Symbolische koppelingen (ook wel zachte koppelingen genoemd) en harde koppelingen zijn een hulpmiddel om vanaf elke locatie toegang te krijgen tot bestanden of mappen. Dit artikel beschrijft de verschillen tussen symbolische links en harde links.

Harde links

Harde links zijn geen bestand dat het pad naar het originele bestand bevat, maar spiegelkopieën van het originele bestand waarnaar ze verwijzen. Een bestand en zijn harde links zijn niet gekoppeld aan de naam of het pad, maar aan de inode die informatie over het bestand opslaat, zoals de locatie, aanmaakdatum, machtigingen en andere attributen. Elk inodenummer is uniek binnen een bestandssysteem en voorkomt dat harde koppelingen werken tussen verschillende partities of systemen. Harde links kunnen niet worden gebruikt om mappen te koppelen.







In tegenstelling tot zachte links bevatten harde links de informatie waarnaar ze verwijzen, dus als het originele bestand wordt verwijderd, hebt u nog steeds toegang tot de gegevens.



In alle Linux-systemen worden zowel harde als symbolische koppelingen gemaakt met het commando ln . Maak om te beginnen eerst een bestand met de naam LinuxHintBestand en een map genaamd LinuxHintDirectory zoals weergegeven in onderstaande afbeelding:



aanrakenLinuxHintBestand
rmkdir LinuxHintDirectory
ls
wortel@LinuxHint:/huis/linuxhint#





Om een ​​harde link genaamd Link2LHFile naar het bestand LinuxHintFile in de terminal te maken:

lnLinuxHintFile Link2LHFile



Na controle met ls we zien de harde link die we zojuist hebben gemaakt, als je ls -i typt, zie je de inodes van de bestanden, je kunt bevestigen dat de link die we zojuist hebben gemaakt hetzelfde inodenummer heeft als het originele bestand, typ:

ls -l

Zoals we hierboven al zeiden, kunnen we geen harde links gebruiken voor mappen of links naar andere volumes of bestandssystemen, we zullen LinuxHintDirectory koppelen met een zachte link.

U kunt harde links in de werkdirectory vinden door het volgende uit te voeren:

vind -typeF-links+1

Je kunt ook bestanden vinden op inodes, voor deze run:

vind.-inum <InodeNummer>

Zoals je ziet, vond het zowel het originele bestand als de harde link met hetzelfde inodenummer.

Softlinks

In tegenstelling tot hardlinks zijn softlinks geen kopieën van het originele bestand, ze bevatten het pad naar het originele bestand, hierdoor zal als het originele bestand wordt verwijderd de softlink of symbolische link erop wijzen dat geen enkel bestand een verbroken link wordt, of een verweesde link, wat betekent dat als je het bronbestand verliest, als je het verwijdert of verplaatst, de symbolische link de toegang tot de informatie zal verliezen, terwijl met de harde link de informatie blijft ondanks het verwijderen van het bronbestand omdat het een volledig en exact kopie van dat bestand.

Ook in tegenstelling tot harde links delen symbolische links niet dezelfde inode met het originele bestand, daarom kunnen symbolische links volumes en bestandssystemen doorkruisen, terwijl harde links dat niet kunnen. Symbolische koppelingen kunnen worden gebruikt om mappen te koppelen, terwijl dat met harde koppelingen niet mogelijk is.

Er worden ook symbolische koppelingen gemaakt met het programma ln , maar om de link symbolisch/zacht te laten zijn, moeten we de parameter specificeren -s , om een ​​symbolische link te maken naar de directory LinuxHintDirectory genaamd LHDLink run:

ln -sLinuxHintDirectory LHDLink

En dan rennen’ ls -i ' om te controleren of het correct is gemaakt:

Zoals we in dit geval zien, is de symbolische link gemaakt, maar deze heeft een ander inodenummer dan het originele bestand.

We kunnen symbolische links in een map weergeven met het commando ls -l

In de bovenstaande afbeelding kunnen we in de machtigingen van het eerste bestand het voorvoegsel zien de voor symbolische koppelingen geeft het einde van de regel ook aan naar welk bestand de symbolische koppeling verwijst.

Ik hoop dat je dit artikel nuttig vond om de verschillen tussen harde links en symbolische links te begrijpen en hoe je ze kunt maken. Blijf LinuxHint volgen voor meer tips en updates over Linux.