Hard kobling kobler filene og katalogene i samme filsystem, men Soft-lenken kan krysse filsystemgrenser.
Før du forstår koblinger, bør vi først forstå inode, en inode er en datastruktur som består av metadata om filen, for eksempel filopprettelsesdato, filautorisasjoner, eier av filen og mer.
Sammenligningstabel
Grunnlag for sammenligning | Hard link | Myk lenke |
---|---|---|
grunn~~POS=TRUNC | En fil kan nås gjennom mange forskjellige navn kalt harde lenker. | En fil kan nås gjennom forskjellige referanser som peker på den filen, kalles en myk lenke. |
Link validering, når den opprinnelige filen er slettet | Fortsatt gyldig og fil kan nås. | Ugyldig |
Kommando brukes til opprettelse | ln | ln-s |
inode nummer | Samme | Forskjellig |
Kan kobles sammen | Til egen partisjon. | Til et hvilket som helst annet filsystem selv nettverksbasert. |
Minneforbruk | Mindre | Mer |
Relativ vei | Ikke aktuelt | Tillatt |
Definisjon av hard link
Hard linker kobler direkte to filer i samme filsystem og for identifikasjon bruker den filens inode nummer. Harde koblinger kan ikke implementeres på kataloger (siden de peker på inode). Når " ln " -kommandoen brukes til å generere en hard kobling, oppretter den en annen fil på kommandolinjen som kan brukes til å referere til den opprinnelige filen. Både den opprinnelige og genererte filen har samme inode og innhold; dermed vil de ha samme tillatelser og samme eier.
Fjernelsen av den opprinnelige filen påvirker ikke den hardlinkede filen, og en hardt koblet fil forblir. Inoden har en teller, for å beregne antall vanskelige lenker til seg selv. Når telleren angir 0-verdi, tømmes inoden. Når du foretar endringer i den harde lenken, vil den etterligne i den opprinnelige filen.
Definisjon av Soft link
Myke koblinger er vanligvis en alternativ bane (eller et alias) for den opprinnelige filen; disse er også referert til som symbolske lenker . Den inneholder navnet på lenkeens "målfil", flagg som angir at det er en myk lenke. Når en fil er tilgjengelig, omdirigerer den myke lenken den til målfilen gjennom banen skrevet i emnet for den myke lenken.
Disse er veldig nyttige i tilfelle av Windows OS der den myke lenken oppfører seg som snarveier. Opprettelse og sletting av de myke koblingene påvirker ikke den opprinnelige filen. Hvis målfilen slettes, dunker den myke lenken, noe som betyr at den peker ingen steder og genererer en feilmelding når målfilen er tilgjengelig. Myke koblinger bruker ikke inode nummer, i motsetning til hard link. En absolutt eller en relativ bane kan være en del av de symbolske linkene.
Viktige forskjeller mellom hard link og myk lenke
- En hard kobling er et ekstra navn på den opprinnelige filen som refererer til inoden for å få tilgang til målfilen. I kontrast er den myke lenken forskjellig fra den opprinnelige filen, og er et alias til originalfilen, men bruker ikke inode.
- Når en originalfil blir slettet, blir den ugyldige, mens en hard kobling er gyldig, selv om målfilen slettes.
- I Linux er kommandoen som brukes for å opprette hard link, " ln ". I motsetning til kommandoen som brukes for en myk lenke, er " ln -s ".
- Hard kobling har samme inode nummer ulik soft link, hvor målfil og den myke lenken har tydelig inode nummer.
- Harde koblinger er begrenset til egne partisjoner, men myke koblinger kan dekke forskjellige filsystemer.
- Utførelsen av hard link er bedre enn myk lenke i noen tilfeller.
- Relativ sti og absolutt sti begge er tillatt i myke koblinger. Tvert imot er den relative banen ikke tillatt i en hard link.
Konklusjon
En hard link krever ikke ekstra plass og matte løse raskere, men endringene som brukes på en hard kobling, reflekterer i den opprinnelige filen. På den annen side trenger Soft link ekstra plass, men noen endringer i den myke lenken påvirker ikke den opprinnelige filen. Myke koblinger tillates kataloger i motsetning til Hard link.