Snarveier er nyttige, men symbolske lenker (symlinker) kan endre hvordan du bruker filer og mapper på Linux, macOS og Windows.

Hva er en symbolsk kobling (Symlink)? Hvordan lage en i Linux

Annonse Hvis du som datamaskin bruker, hvis du måtte definere en snarvei, vil du sannsynligvis si at det er en peker til en fil, mappe eller en app, ikke sant? Det er riktig. Men den korte definisjonen forteller ikke i det hele tatt. Det innebærer at alle snarveier er de samme når de ikke er det. Du har nesten en håndfull snarveistyper. Vi

Annonse

Hvis du som datamaskin bruker, hvis du måtte definere en snarvei, vil du sannsynligvis si at det er en peker til en fil, mappe eller en app, ikke sant? Det er riktig.

Men den korte definisjonen forteller ikke i det hele tatt. Det innebærer at alle snarveier er de samme når de ikke er det. Du har nesten en håndfull snarveistyper. Vi fokuserer på den symbolske lenken nedenfor. Det kalles også en symlink eller en myk lenke, og vi bruker ordene om hverandre.

La oss se hva som er en symlink, hvordan lage en symlink på Linux så vel som macOS og Windows, hvorfor du trenger denne spesielle typen snarvei og mer.

Hva er en Symlink?

Det er sant at en symlink er en snarveisfil. Men det er annerledes enn en standard snarvei som, for eksempel, et programinstallatør har plassert på Windows-skrivebordet ditt for å gjøre programmet enklere å kjøre.

Jada, ved å klikke på en av snarveiene åpnes det koblede objektet, men det som foregår under panseret er annerledes i begge tilfeller som vi ser neste.

Mens en standard snarvei peker på et bestemt objekt, gjør en symlink det som om det koblede objektet faktisk er der. Datamaskinen din og appene på den vil lese symlink som selve selve objektet.

På macOS får du bevis på dette i form av en "fil eksisterer" -melding som vises når du prøver å opprette en symlink på samme sted som det opprinnelige objektet. Selv om du prøver å flytte symlinken til samme sted etter å ha opprettet den et annet sted, blir den omdøpt til en kopi.

Fil eksisterer melding mens du oppretter en symlink i terminal på macOS

Symlinks mot vanlige snarveier

La oss si at du har en bestemt mappe på harddisken din som du vil synkronisere med Dropbox uten å flytte selve mappen til Dropbox.

I dette tilfellet er det meningsløst å lage en snarvei til mappen i Dropbox. Snarveien vil fungere på enheten du har opprettet den på. Dropbox vil også synkronisere snarveien. Men den synkroniserte snarveifilen er ugyldig når du får tilgang til den fra en annen datamaskin, dvs. at den ikke fører noe sted.

Hvis denne snarveien var en symlink, ville du ikke møte dette problemet. Det er fordi Dropbox leser symlinken som den faktiske mappen, og som et resultat synkroniserer dataene fra den mappen. Du kan deretter få tilgang til mappen og dens innhold på alle enhetene som har Dropbox-synkronisering aktivert, selv om den opprinnelige mappen ikke er en del av Dropbox.

Husk at uansett om det er en vanlig snarvei eller en symlink, vil det ikke påvirke det opprinnelige objektet på noen måte å slette det.

Hvorfor trenger du symbolkoblinger?

Generelt er det lurt å opprette symbolske lenker i stedet for snarveier når du vil:

  • Få tilgang til en fil fra flere steder uten å lage kopier og uten å bruke mye diskplass. (Symlinker er bare noen få byte i størrelse.)
  • Vedlikeholde forskjellige versjoner av en fil, mens du sørger for at pekere på den alltid fører til den nyeste eller oppdaterte versjonen. (Dette fungerer fordi en symlink forblir aktiv selv når du erstatter målfilen med en annen fil med samme navn.)
  • Flytt data fra C: \ -stasjonen til en sekundær harddisk uten å forstyrre system- eller appfunksjonene som trenger nevnte data for å være på C: \ -stasjonen.

Du vil sannsynligvis komme over mange andre brukssaker for symbolske lenker.

Hvordan lage Symlinker

Du kan opprette myke lenker ved å bruke terminalen eller kommandolinjen. Vi kommer til peke-og-klikk-verktøyene senere hvis du ikke er komfortabel med å fikle med terminalen.

På Linux og macOS

Terminalkommando for å lage en symbolsk lenke på macOS

På Linux kan du opprette en symbolsk lenke for en fil eller mappe med denne terminalkommandoen:

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

Den samme kommandoen fungerer også på macOS, siden macOS er et UNIX-basert operativsystem som Linux.

Se skjermbildet over for en prøvekommando.

Den opprinnelige filbehandleren i visse Linux-skrivebordsmiljøer lar deg opprette en myk kobling via høyreklikkmenyen, så det kan være lurt å sjekke om filutforsker-appen har det alternativet.

Den populære Nautilus-filbehandleren, som leveres sammen med forskjellige Linux-distros, hadde et alternativ for Make Link- meny som nå er borte. Men du kan fremdeles opprette en symlink i Nautilus ved å holde Ctrl- og Shift- tastene nede og dra målfilen til stedet der du vil at symlinken skal vises. Ikke bekymre deg, den originale filen vil forbli satt.

På Windows

Du må åpne et ledetekstvindu som administrator og skriv inn følgende kommando for å opprette en symbolsk kobling:

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

For symbolske koblinger til kataloger, må du finpusse kommandoen litt ved å bruke flagget / d :

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

Hvis du ikke vil jobbe med kommandolinjen, kan du bruke et grafisk verktøy kalt Link Shell Extension til å lage symboliske lenker. Det er en av de beste Windows File Explorer-utvidelsene for filhåndtering.

Merk: Systemet vil ikke hindre deg i å opprette en symbolkobling innenfor en symbolkobling, men det er best å unngå å gjøre det. Ellers vil du opprette en uendelig sløyfe som kan forårsake problemer for systemomfattende tjenester som antivirusskannere.

Symlinks mot aliaser på macOS

Symlink og alias for en fil i Finder på macOS

Hvis du noen gang har opprettet aliaser på macOS, vil du legge merke til at de oppfører seg omtrent som symlinker. Begge typer snarveier refererer til banenavnet til den koblede filen eller mappen.

Forskjellen er at aliaset også markerer det koblede objektet med en identifikator som heter inode (indeksnode). Denne identifikatoren er unik for objektet og følger den rundt filsystemet.

Derfor vil aliaset fungere bra selv om du flytter målet ditt til et annet sted. Prøv det med en symlink, så får du en feil. (Du kan flytte aliaset og symlinken uten problemer, med mindre du har å gjøre med systembeskyttede filer.)

Begge typer snarveier vil naturligvis være ubrukelige hvis du sletter den opprinnelige filen eller gir nytt navn til noen av mappene høyere opp i hierarkiet.

Kan du ikke se forskjellen mellom et alias og en symlink fordi du har fjernet aliaskoden fra filnavnet for aliaset?

Åpne filinspektøren eller Get Info- panelet for hver snarvei og se på filstørrelsen under delen Generelt . Hvis det står (null byte på disk), har du å gjøre med en symlink.

Symboliske lenker (i gjeldende mappe) vil også avsløre seg når du bruker denne terminalkommandoen:

 ls -la 

Kommandoen fungerer også på Linux, og du vil se den symbolske lenken peke til plasseringen av det opprinnelige objektet.

Symlinker er bedre enn snarveier

Symboliske koblinger kan virke forvirrende til å begynne med, men hvis du tar deg tid til å forstå dem, vil du innse at de tross alt er ganske enkle å bruke!

Du kan til og med lage symbolske lenker på Android med Termux, en app som lar deg bruke Linux-kommandolinjen. Og visste du at du lettere kan dele Google Drive-filer med symbolske lenker Gjør Google Drive-filer enklere å dele med symbolske lenker Gjør Google Drive-filer enklere å dele med symboliske lenker. Vil du lage kopier av en fil som alle forblir synkronisert når endringene er laget til hovedfilen? Google Drive gjør det enkelt å gjøre det. Les mer ?

Utforsk mer om: Symbolic Link, Terminal.