Bløde og hårde links i Linux

Anonim

Vi har allerede fortalt om bløde og hårde links i Linux, og denne artikel er afsat til deres dybere undersøgelse. Links i Linux-operativsystemet er 2 typer blødt og hårdt. Hvis du udfører en analogi med Windows-operativsystemet, arbejder vi primært med bløde links, symbolske etiketter. Men der er også hårde links i Windows-operativsystemet, de er simpelthen meget dybt skjult inde i operativsystemet. Artiklen fortæller:

  • Sådan identificerer du Link Type
  • Hvad er forskellen mellem blød og hårde reference
  • Hvad er forskellen mellem kopiering og oprettelse af links

Så vi ser på hjemmemappen. Jeg har oprettet en fil og 2 links stiv og blød, der angiver denne fil.

Hovedfilen FILE.TXT, HARD.TXT HARD.TXT-fil til FILE.TXT-filen og SOFT.TXT-blød link til File.txt-fil. Hvordan kan jeg bemærke de symbolske (bløde) links i skallen, normalt tonet lyseblå og vist på hvilken fil den refererer til. Du kan stadig have en interessant ting at erstatte hovedfilen vejer 38 kilobytes og en streng reference så meget vejer. Blød link er kun en genvej og vejer kun 8 kilobytes. Lad os se, hvad hovedfilen. Filen indeholder sætningen.

Bløde og hårde links i Linux 12433_2

LS-kommandoen med -LI-tasten kan vise inoder. Som et resultat af at indtaste kommandoen, dukkede en anden kolonne foran. I denne kolonne og viser tomodens nummer, dvs. identifikatorfil, indeksbeskrivelse, filplacering på disk, filetiket.

Bløde og hårde links i Linux 12433_3

I vores tilfælde falder indikatorerne fra filen og den stramme reference falder sammen. Dvs. den stive link angiver det samme sted, hvor hovedfilen er placeret på samme sted på harddisken. Den bløde link er selv en separat fil, og den har en helt anden inode. Og det kan også ses, at filen i rettighederne syntes bogstavet l, hvilket tyder på, at dette er et symbolsk link. Og forsøger at se indholdet af et stift og blødt link, får vi det samme resultat. Alt viser den samme fil.

Hvis vi forsøger at tilføje, ændringer i filen. For eksempel, Echo Hej >> File.txt

Vi får det samme resultat. Tag og omdøb vores vigtigste mv file.txt newfile.txt-fil.

Nu kan vi se, at linket er blødt med os, er blevet rødt (BAT). Fordi, er bløde links baseret på filnavnet. Og ikke kun i filnavnet, men på filens fulde navn. En streng reference, som den var, og forblev arbejde. Fordi det angiver den samme inode, fordi det peger på det sted, hvor denne fil er placeret. Og hvis vi er katteværktøjet, viser vi det hårde link i output, vi får kildefilen, og det bløde link vil give os en fejl. Hovedforskellen mellem den stive reference og blød er, at blød afhænger af filnavnet. Og det hårde angiver den fysiske placering, der er defineret af beskrivelsen, hvor filen er placeret.

Disse links er simpelthen skabt nok, LN-kommandoen, der angiver hovedfilen og links. For eksempel, ln file.txt hard.txt. Når du opretter et blødt link, tilføjes nøglen. Det vil se noget som denne - ln -s file.txt soft.txt. Når du opretter et link, kan du angive objekter uden udvidelse.

Fordi Vi er bundet til det strenge link til inode, det kan ikke bruges med flere filsystemer. Hvis du har en anden harddisk, der skiftes til dette filsystem, vil du ikke være i stand til at oprette et stift link fra dette system til den anerkendte harddisk. Fordi det hele er afhængig af inode, og inode er gyldigt for et bestemt filsystem. Derfor, i Windows-operativsystemet, er alle standard referencer bløde. Det kan bruge det overalt. For eksempel kan vi oprette links til alle dine vigtige mapper i din hjemmekatalog eller data. Meget ofte bruges symbolske links til at administrere. Linux operativsystem. For eksempel, for kommandoer, hvis brugeren ikke ønsker at kende versionsnummeret eller yderligere tasterne, kan det blot få adgang til forskellige versioner, der blot bruger links.

Det er også værd at nævne situationen med mapper.

Opret en mappe - mkdir mappe. Lad os oprette et hårdt link til denne mappe - ln mappe mappe.lnk, denne kommando viser en fejl, der angiver, at du ikke kan oprette et hårdt link til mappen, men, og hvis vi vil oprette et blødt (symbolsk link), så Problemer vil ikke opstå - ln - s mappe mappe.lnk.

En god tone, når du opretter symbolske links, er en indikation af FULL PATH-filen, fordi bindingen går til filnavnet, og når vi opretter, hvis du angiver relativ, kan vi støde på en situation, hvor det resulterende link vil være en flagermus. For eksempel, når vi vil oprette et link til filen og sætte det indenfor andre ln -s /home/siadmin/file.txt mappe mapper. Denne indstilling vil blive arbejdet.

Forskellen mellem kopiering af en fil og oprettelse af et link. Når du kopierer filen, opretter vi faktisk en anden fil med alle dens indhold, og når vi opretter et link - dette er en etiket til filen. Kopier filen file.txt i newfile.txt og på file.txt vil oprette et hårdt link. Når vi ser ud af udgangen af ​​LS -L-kommandoen på mappen, kan den visuelle kopi ikke lidelse fra det hårde link, hvis vi ikke ved det. Og forskellen vi kun vil se, hvis vi ser på inoderne.

Når vi ser inodenumrene fra filen og de stramme referencer falder sammen, og vi ved ikke, hvad der er primært af dem. Du kan se en kolonne med numre efter at have angivet rettigheder til objekter, det viser, hvor mange hårde referencer der er på denne inode. Opret en anden ln file.txt hard1.txt hard link. Nu, hvis du laver en LS -I-udgang, så vil vi se figuren 3. Hvorfor foregår det? Ved at slette filen er vores standard en handling, der nulstiller antallet af alle stive links. Hvis vi sletter filkildefilen.txt. Og lad os se konklusionen, vi vil se, at hvis der er bløde links, vil de stoppe med at arbejde, og Hard.txt og Hard1.txt-filerne forblev.

Bløde og hårde links i Linux 12433_4

Hvis du f.eks. Kontakt disse hårde links, f.eks. Ved hjælp af Cat Hard.txt View Utility, vil vi se teksten, som vi oprindeligt havde i filen.

Bløde og hårde links i Linux 12433_5

Dette skyldes, at selve filen er noget plads, der er besat på disken, og navnet på filen og stien til det er et stramt link. Derfor er enhver fil et hårdt link til diskpladsen. Vi kan skabe så mange links til vores inode, og mens vi alle ikke sletter, vil vores fil være på plads.

Læs mere