Filgenvägar är användbara, men symboliska länkar (symlänkar) kan ändra hur du använder filer och mappar på Linux, macOS och Windows.

Vad är en symbolisk länk (Symlink)? Hur man skapar en i Linux

Annons Som datoranvändare, om du var tvungen att definiera en genväg, skulle du förmodligen säga att det är en pekare till en fil, mapp eller en app, eller hur? Det stämmer. Men den korta definitionen berättar inte hela historien alls. Det innebär att alla genvägar är desamma när de inte är det. Du har näs

Annons

Som datoranvändare, om du var tvungen att definiera en genväg, skulle du förmodligen säga att det är en pekare till en fil, mapp eller en app, eller hur? Det stämmer.

Men den korta definitionen berättar inte hela historien alls. Det innebär att alla genvägar är desamma när de inte är det. Du har nästan en handfull genvägtyper. Vi kommer att fokusera på den symboliska länken nedan. Det kallas också en symlink eller en mjuk länk, och vi använder termerna omväxlande.

Låt oss se vad som är en symlink, hur man skapar en symlink på Linux såväl som macOS och Windows, varför du behöver denna speciella typ av genväg och mer.

Vad är en Symlink?

Det är sant att en symlink är en genvägsfil. Men det skiljer sig från en vanlig genväg som, till exempel, ett programinstallatör har placerat på ditt Windows-skrivbord för att göra programmet enklare att köra.

Visst, genom att klicka på någon av genvägarna öppnar det länkade objektet, men vad som händer under huven är annorlunda i båda fallen som vi kommer att se nästa.

Medan en standardgenväg pekar på ett visst objekt, gör en symlink att det verkar som om det länkade objektet faktiskt finns där. Din dator och apparna på den kommer att läsa symlänken som själva målobjektet.

På macOS får du bevis på detta i form av ett "fil finns" -meddelande som visas när du försöker skapa en symlink på samma plats som det ursprungliga objektet. Även om du försöker flytta symlänken till samma plats efter att du har skapat den någon annanstans, byts den om till en kopia.

Filen finns meddelandet medan du skapar en symlink i terminal på macOS

Symlinks mot vanliga genvägar

Låt oss säga att du har en viss mapp på hårddisken som du vill synkronisera med Dropbox utan att flytta själva mappen till Dropbox.

I detta fall är det meningslöst att skapa en genväg till mappen i Dropbox. Genvägen fungerar på den enhet du skapade den på. Dropbox synkroniserar också genvägen. Men den synkroniserade genvägsfilen är ogiltig när du går åt den från en annan dator, dvs den leder ingenstans.

Om den genvägen var en symlink skulle du inte möta det här problemet. Det beror på att Dropbox läser symlänken som den verkliga mappen och som ett resultat synkroniserar data från den mappen. Du kan sedan komma åt mappen och dess innehåll på alla dina enheter som har Dropbox-synkronisering aktiverad, även om den ursprungliga mappen inte är en del av din Dropbox.

Kom ihåg att oavsett om det är en vanlig genväg eller en symlink, att ta bort det kommer inte att påverka det ursprungliga objektet på något sätt.

Varför behöver du symlänkar?

I allmänhet är det en bra idé att skapa symboliska länkar istället för genvägar när du vill:

  • Få åtkomst till en fil från flera platser utan att skapa kopior och utan att använda mycket diskutrymme. (Symlänkar är bara ett fåtal byte i storlek.)
  • Underhålla olika versioner av en fil och samtidigt säkerställa att alla pekare på den alltid leder till den senaste eller uppdaterade versionen. (Detta fungerar eftersom en symlink förblir aktiv även när du byter ut målfilen mot en annan fil med samma namn.)
  • Flytta data från din C: \ enhet till, till exempel, en sekundär hårddisk utan att störa system- eller appfunktioner som behöver nämnda data vara på C: \ -enheten.

Du kommer sannolikt att stöta på många andra användningsfall för symboliska länkar.

Hur man skapar symlänkar

Du kan skapa mjuka länkar med terminalen eller kommandoraden. Vi kommer till pek-och-klickverktygen senare om du inte är bekväm att fikla med terminalen.

På Linux och macOS

Terminalkommando för att skapa en symbolisk länk på macOS

På Linux kan du skapa en symbolisk länk för en fil eller mapp med detta terminalkommando:

 ln -s [/path/to/file] [/path/to/symlink] 

Samma kommando fungerar också på macOS, eftersom macOS är ett UNIX-baserat operativsystem som Linux.

Se skärmdumpen ovan för ett exempelkommando.

Den ursprungliga filhanteraren i vissa Linux-skrivbordsmiljöer låter dig skapa en mjuk länk via högerklickmenyn, så du kanske vill kontrollera om din filutforskarapp har det alternativet.

Den populära Nautilus-filhanteraren, som levereras med olika Linux-distros, hade ett menyalternativ Make Link som nu har försvunnit. Men du kan fortfarande skapa en symlink i Nautilus genom att hålla ned Ctrl- och Shift- tangenterna och dra målfilen till den plats där du vill att symlänken ska visas. Oroa dig inte, den ursprungliga filen kommer att förbli satte.

På Windows

Du måste öppna ett kommandotolken som administratör och ange följande kommando för att skapa en symbolisk länk:

 mklink [/path/to/symlink] [/path/to/file] 

För symboliska länkar till kataloger måste du finjustera kommandot lite med flaggan / d :

 mklink /d [/path/to/symlink] [/path/to/file] 

Om du inte vill arbeta med kommandoraden kan du använda ett grafiskt verktyg som heter Link Shell Extension för att skapa symboliska länkar. Det är en av de bästa Windows File Explorer-förlängningarna för filhantering.

Obs! Systemet hindrar inte dig från att skapa en symbolisk länk inom en symbollänk, men det är bäst att undvika att göra det. Annars skapar du en oändlig slinga som kan orsaka problem för systemomfattande tjänster som antivirusskannrar.

Symlänkar kontra alias på macOS

Symlink och alias för en fil i Finder på macOS

Om du någonsin har skapat alias på macOS, kommer du att märka att de beter sig som symlänkar. Båda typer av genvägar refererar till söknamnet för den länkade filen eller mappen.

Skillnaden är att aliaset också markerar det länkade objektet med en identifierare som kallas inode ( indexnod ). Denna identifierare är unik för objektet och följer den runt filsystemet.

Det är därför aliaset fungerar bra även om du flyttar målet till en annan plats. Prova det med en symlink och du får ett fel. (Du kan flytta aliaset och symlänken själv utan problem, såvida du inte har att göra med systemskyddade filer.)

Naturligtvis kommer båda typerna av genvägar att vara värdelösa om du tar bort den ursprungliga filen eller byter namn på någon av mapparna högre upp i hierarkin.

Kan du inte skilja skillnaden mellan ett alias och en symlink eftersom du har tagit bort alias- taggen från filnamnet för aliaset?

Öppna filinspektören eller Get Info- panelen för varje genväg och titta på filstorleken under avsnittet Allmänt . Om det står (noll byte på disk), har du med en symlink.

Symboliska länkar (i den aktuella mappen) kommer också att avslöja sig när du använder detta terminalkommando:

 ls -la 

Kommandot fungerar också på Linux så ser du den symboliska länken till platsen för det ursprungliga objektet.

Symlänkar är bättre än genvägar

Symboliska länkar kanske verkar förvirrande från början, men om du tar dig tid att förstå dem, kommer du att inse att de trots allt är ganska enkla att använda!

Du kan till och med skapa symboliska länkar på Android med Termux, en app som låter dig använda Linux-kommandoraden. Och visste du att du lättare kan dela Google Drive-filer med symboliska länkar Gör Google Drive-filer lättare att dela med symboliska länkar Gör Google Drive-filer enklare att dela med symboliska länkar Vill du göra kopior av en fil som alla förblir synkroniserade när förändringar är gjort till masterfilen? Google Drive gör det enkelt att göra det. Läs mer ?

Utforska mer om: Symbolisk länk, terminal.