Anbefalet, 2024

Redaktørens Valg

Forskel mellem hard link og soft link

Links i Unix er i det væsentlige de pointers, der knytter sig til filerne og mapperne. Den store forskel mellem et hardt link og en blød link er, at hard link er den direkte henvisning til filen, mens soft link er referencen ved navn, hvilket betyder, at det peger på en fil efter filnavn.

Hard link forbinder filer og mapper i samme filsystem, men den bløde link kan krydse filsystemgrænser.

Før vi forstår links, skal vi først forstå inode, en inode er en datastruktur bestående af metadata om filen, f.eks. Fil oprettelsesdato, filtilladelser, ejer af filen og meget mere.

Sammenligningstabel

Grundlag for sammenligningHårdt link
Blød link
GrundlæggendeEn fil kan fås gennem mange forskellige navne kendt som hårde links.En fil kan fås gennem forskellige referencer, der henviser til den fil, kaldes en blød link.
Link validering, når den oprindelige fil slettesStadig gyldig og fil er tilgængelig.
Ugyldig
Kommando bruges til oprettelseln
ln-s
inode nummerSamme
Forskellige
Kan knyttes sammenTil sin egen partition.Til ethvert andet filsystem, der netop er tilsluttet.
HukommelsesforbrugMindreMere
Relativ StiIkke anvendeligTilladt

Definition af hard link

Hard links linker direkte to filer i samme filsystem og til identifikation bruger den filens inode nummer. Hårde links kan ikke implementeres på mapper (da de peger på inode). Når " ln " -kommandoen bruges til at generere et hardt link, opretter det en anden fil på kommandolinjen, der kan bruges til at henvise den oprindelige fil. Både den oprindelige og genererede fil har samme inode og indhold; derfor vil de have samme tilladelser og den samme ejer.

Fjernelsen af ​​den oprindelige fil påvirker ikke den hardlinkede fil, og en hardlinket fil forbliver. Inoden indeholder en tæller til beregning af antallet af hårde forbindelser til sig selv. Når tælleren angiver 0 værdi, tømmes inoden. Når du foretager ændringer i det hårde link, vil det efterligne i den oprindelige fil.

Definition af Soft link

Bløde links er normalt en alternativ sti (eller et alias) for den oprindelige fil; disse benævnes også symbolske links . Det indeholder navnet på linkets "målfil", flag, som angiver, at det er en blød link. Når en fil er tilgængelig, omdirigerer den bløde link den til målfilen gennem stien, der er skrevet i emnet for den bløde link.

Disse er meget praktiske i tilfælde af Windows OS, hvor den bløde link opfører sig som genveje. Oprettelse og sletning af de bløde links påvirker ikke den oprindelige fil. Hvis målfilen slettes, dræber den bløde link, hvilket betyder, at den peger hverken og genererer en fejlmeddelelse, når målfilen er tilgængelig. Bløde links bruger ikke inode nummer, i modsætning til hard link. En absolut eller en relativ vej kunne være en del af de symbolske links.

Nøgleforskelle mellem hard link og soft link

  1. Et hardt link er et ekstra navn på den oprindelige fil, der henviser inode for at få adgang til målfilen. I modsætning hertil er den bløde link forskellig fra den oprindelige fil og er et alias til den originale fil, men bruger ikke inode.
  2. Når en originalfil bliver slettet, bliver det bløde link ugyldigt, mens et hardt link er gyldigt, selvom målfilen er slettet.
  3. I Linux er kommandoen anvendt til oprettelsen af ​​hard link " ln ". Modsat er kommandoen anvendt til en blød link " ln -s ".
  4. Hårdt link har samme inode nummer som ikke-soft link, hvor målfil og dens bløde link har tydeligt inode nummer.
  5. Hårde links er begrænset til egne partitioner, men bløde links kan dække forskellige filsystemer.
  6. Udførelsen af ​​hard link er bedre end blød link i nogle tilfælde.
  7. Relativ sti og absolut sti begge er tilladt i bløde links. Tværtimod er den relative vej ikke tilladt i et hårdt led.

Konklusion

Et hårdt link kræver ikke ekstra plads og matte løse hurtigere, men ændringerne anvendt på et hardt link afspejler i den oprindelige fil. På den anden side behøver Soft link ekstra plads, men enhver ændring i den bløde link påvirker ikke den oprindelige fil. Bløde links tillades mapper i modsætning til Hard link.

Top