Blødt (symbolsk) link vs hårdt link

Soft Link Vs Hard Link



Symboliske links (også kaldet bløde links) og hårde links er en ressource til at få adgang til filer eller mapper fra ethvert sted. Denne artikel vil beskrive forskellene mellem symbolske links og hårde links.

Hårde links

Hårde links er ikke en fil, der indeholder stien til den originale fil, men spejlkopier af den originale fil, de peger på. En fil og dens hårde links er ikke forbundet med navnet eller stien, men med den inode, der gemmer oplysninger om filen, f.eks. Dens placering, oprettelsesdato, tilladelser og andre attributter. Hvert inode -nummer er unikt i et filsystem, der forhindrer hårde links i at fungere mellem forskellige partitioner eller systemer. Hårde links kan ikke bruges til at linke biblioteker.







I modsætning til bløde links indeholder hårde links de oplysninger, de linker til, så hvis den originale fil fjernes, kan du stadig få adgang til dens data.



I alle Linux -systemer oprettes både hårde og symbolske links med kommandoen ln . For at komme i gang skal du først oprette en fil kaldet LinuxHintFile og et bibliotek kaldet LinuxHintDirectory som vist på billedet herunder:



røre vedLinuxHintFile
rmkdir LinuxHintDirectory
ls
rod@Linux Tip:/hjem/linuxhint#





For at oprette et hårdt link kaldet Link2LHFile til filen LinuxHintFile, der køres i terminalen:

lnLinuxHintFile Link2LHFile



Efter at have tjekket med ls vi ser det hårde link, vi lige har oprettet, hvis du skriver ls -i vil du se filernes inoder, kan du bekræfte, at det link, vi lige har oprettet, har det samme inode -nummer end den originale fil, skriv:

ls -jeg

Som vi sagde ovenfor, kan vi ikke bruge hårde links til mapper eller links til andre mængder eller filsystemer, vi forbinder LinuxHintDirectory med et blødt link.

Du kan finde hårde links i arbejdsmappen ved at køre:

Find -typef-links+1

Du kan også finde filer efter inoder til dette løb:

Find.-inum <InodeNummer>

Som du ser, fandt den både den originale fil og det hårde link, der deler det samme inode -nummer.

Bløde links

I modsætning til hårde links er bløde links ikke kopier af den originale fil, de indeholder stien til den originale fil, på grund af dette, hvis den originale fil fjernes, vil det bløde link eller det symbolske link pege på, at ingen fil bliver et brudt link, eller et forældreløst link, hvilket betyder, at hvis du mister kildefilen, hvis du sletter eller flytter den, vil det symbolske link miste adgang til oplysningerne, mens informationen med det hårde link forbliver på trods af fjernelse af kildefilen, fordi den er en fuldstændig og præcis kopi af den fil.

I modsætning til hårde links deler symbolske links ikke den samme inode med den originale fil, derfor kan symbolsk link krydse mængder og filsystemer, mens hårde links ikke kan. Symboliske links kan bruges til at linke biblioteker, mens det med hårde links ikke er muligt.

Der oprettes også symbolske links med programmet ln , men for at linket skal være symbolsk/blødt, skal vi angive parameteren -s , for at oprette et symbolsk link til biblioteket LinuxHintDirectory kaldet LHDLink run:

ln -sLinuxHintDirectory LHDLink

Og kør derefter ' ls -i 'For at kontrollere, at den blev oprettet korrekt:

Som vi ser i dette tilfælde blev det symbolske link oprettet, men det har et andet inode -nummer end den originale fil.

Vi kan angive symbolske links i et bibliotek med kommandoen ls -l

På billedet ovenfor kan vi se tilladelserne til den første fil præfikset det for symbolske links viser slutningen af ​​linjen også til hvilken fil det symbolske link peger.

Jeg håber, at du fandt denne artikel nyttig til at forstå forskelle mellem hårde links og symbolske links, og hvordan du opretter dem. Fortsæt med at følge LinuxHint for flere tips og opdateringer om Linux.