DevOps-bootcamp · Lektion

Skapa länkar: hårda länkar och symboliska länkar

Referera till en fil från flera platser. Lär er skillnaden mellan hårda länkar och symboliska länkar, hur ni skapar dem med ln och när respektive variant bör användas.

Lektion 4 av 413 steg

Skapa länkar: hårda länkar och symboliska länkar är en gratis lektion i DevOps-bootcamp på CoddyKit. Detta är lektion 4 av 4. Du kan läsa vilka 3 lektioner som helst i den här lärvägen kostnadsfritt i sin helhet – därefter låser CoddyKit PRO upp alla lektioner, plus praktisk övning med en inbyggd kodredigerare och en AI-lärare dygnet runt. Den ingår i lärvägen för DevOps-bootcamp, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i DevOps-bootcamp innehåller totalt 4 lektioner.

Vad är en länk?

En länk gör att flera namn kan hänvisa till samma fildata. Linux stöder två typer: hårdlänkar och symboliska länkar (mjuklänkar).

Inoder: den verkliga filen

På disken är en fil en inode som innehåller data och metadata. Ett filnamn är bara en katalogpost som pekar på en inode. Detta är nyckeln till att förstå länkar.

Skapa en hårdlänk

En hårdlänk är en annan katalogpost som pekar på samma inode. Använd ln utan flaggor.

ln original.txt copy.txt
# both names share the same data

Så fungerar hårdlänkar

Eftersom båda namnen pekar på samma inode ändras samma data när ni redigerar via något av namnen. Filen tas bort först när den sista länken tas bort.

rm original.txt   # data still reachable via copy.txt

Begränsningar för hårdlänkar

Hårdlänkar kan inte gå över filsystemgränser och kan vanligtvis inte länka till kataloger. De kan inte heller peka på en fil på en annan disk eller partition.

Skapa en symbolisk länk

En symbolisk länk är en liten fil som lagrar en sökväg till en annan fil. Skapa den med ln -s.

ln -s /var/www/site current
# current -> /var/www/site

Så fungerar symboliska länkar

En symbolisk länk pekar på ett namn, inte på en inode. Om målet tas bort eller flyttas blir den symboliska länken en bruten (hängande) länk.

ls -l current
current -> /var/www/site

Symboliska länkar över filsystemgränser

Till skillnad från hårdlänkar kan symboliska länkar gå över filsystemgränser och peka på kataloger – därför används de bland annat för mappar med versionshanterade releaser.

Identifiera länkar med ls

ls -l visar symboliska länkar med en pil och filtypen l. För hårdlänkar visar kolumnen för länkantalet hur många namn som delar samma inode.

ls -li
12345 -rw-r--r-- 2 user ...   # count 2 = hard linked

Ta bort länkar

Använd rm på en symbolisk länk för att ta bort länken, inte målet. Var försiktig: ett avslutande snedstreck på en symbolisk länk till en katalog kan ge oväntade resultat.

rm current   # removes only the symlink

När ska ni använda vilken?

Använd en symbolisk länk för genvägar, referenser över filsystemgränser och kataloger (det vanligaste). Använd en hårdlänk när ni behöver flera likvärdiga namn för identiska data i samma filsystem.

Snabbtest

Testa er förståelse.

Sammanfattning

Ni har lärt er om länkar: hårdlänkar lägger till ett namn för samma inode (samma filsystem, inga kataloger, data finns kvar tills den sista länken tas bort), medan symboliska länkar (ln -s) lagrar en sökväg, kan gå över filsystemgränser och peka på kataloger, men kan brytas.

Gratis att börja

Lär dig DevOps-bootcamp med en AI-lärare – gratis

Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.

Kurser
142
Lektioner
568

Vanliga frågor

Är lektionen ”Skapa länkar: hårda länkar och symboliska länkar” gratis?

Ja – du kan läsa vilka 3 lektioner som helst i lärvägen DevOps-bootcamp, inklusive ”Skapa länkar: hårda länkar och symboliska länkar”, kostnadsfritt i sin helhet här på webben. Därefter låser CoddyKit PRO upp alla lektioner, plus interaktiv övning med en inbyggd kodredigerare och en AI-lärare dygnet runt. Kursen i DevOps-bootcamp innehåller totalt 4 lektioner.

Vad lär jag mig i ”Skapa länkar: hårda länkar och symboliska länkar”?

Referera till en fil från flera platser. Lär er skillnaden mellan hårda länkar och symboliska länkar, hur ni skapar dem med ln och när respektive variant bör användas. Ni övar på DevOps-bootcamp med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.

Behöver jag någon erfarenhet för att börja lära mig DevOps-bootcamp?

Du behöver inga förkunskaper. Utbildningen i DevOps-bootcamp på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 4 av 4.

Hur lång tid tar lektionen ”Skapa länkar: hårda länkar och symboliska länkar”?

De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.

Kan jag skriva och köra kod i den här DevOps-bootcamp-lektionen?

Ja. Varje DevOps-bootcamp-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.

Alla lektioner i den här kursen

  1. Visa filinnehåll (cat, less, head, tail)
  2. Förstå filrättigheter (chmod, chown)
  3. Söka efter filer (find, grep)
  4. Skapa länkar: hårda länkar och symboliska länkar
← Tillbaka till DevOps-bootcamp