I denne guiden, sjekk ut å fjerne eller slette symbolsk lenke i Linux.
Forutsetninger
En symbolsk lenke er en pekerfil. Når det er åpnet, omdirigerer den plasseringen av den opprinnelige filen eller katalogen. Så reglene for filtillatelse gjelder på samme måte. For å utføre enhver operasjon på Symlink, må brukerkontoen ha skrivetillatelse til overordnede katalog. Ellers vil det å prøve å fjerne den symbolske lenken føre til en feil.
Hvis en symlink er i bruk, kan det å fjerne den føre til uønskede problemer. Så før du fjerner en symlink, må du forsikre deg om at det ikke påvirker arbeidsflyten til noe annet program.
Oppdage symbolsk lenke
Når en symbolsk lenke fjernes, blir ikke den opprinnelige filen påvirket. Hvis målet ditt er å fjerne symlink, er det alltid en god idé å dobbeltsjekke om målet faktisk er en symbolsk lenke.
Vi kan bestemme en symbolsk lenke fra filinformasjonen.
$ ls -l/usr/bin/java
Ta en titt på filtillatelsen. Den første karakteren er “L”, som indikerer at det er en symbolsk lenke. Senere i utdataene indikerer den også den opprinnelige plasseringen av filen.
Fjerne en symbolsk lenke
En symbolsk kobling i seg selv er en fil. Vi kan fjerne lenken ved å slette Symlink -filen ganske enkelt. Alternativt er det dedikerte verktøy for å oppdage og fjerne symlink.
For demonstrasjon har jeg laget en dummy symbolsk lenke. Lær mer om hvordan du oppretter en symbolsk lenke i Linux.
$ ls -l dummy_symlink.tekst
Fjerne en symlink ved hjelp av rm
RM -kommandoen er det dedikerte verktøyet for å slette filer og kataloger fra systemet. Fordi Symlink i seg selv er en fil, kan vi bruke rm kommando for å fjerne det.
Følgende rm Kommandoen vil fjerne symlink.
$ rm -v
For å fjerne flere symlink, bruk rm Som du vil fjerne flere filer. Bruk følgende kommandostruktur.
$ rm -v
I interaktiv modus, rm vil spørre før du fjerner hver fil og katalog. Å løpe rm I interaktiv modus, bruk "-i" -flagget.
$ rm -i
Hvis målsymlink er av en katalog, unngå “/” på slutten av katalognavnet.
$ rm -v
Hvis du inkluderer "/", så rm vil anta at det er en katalog. Hvis RM kjøres for å slette en katalog, vil den også slette innholdet i den opprinnelige katalogen. Når du sletter Symlink, er det sannsynligvis ikke det forventede resultatet.
Fjerne en symlink ved hjelp av unlink
I stedet for å bruke rm, Unlink er også et effektivt verktøy for å fjerne symbolsk lenker. Det er et dedikert verktøy for å fjerne lenker (både symbolske og harde lenker). I motsetning til rm, UNLINK støtter imidlertid fjerning av en fil om gangen.
For å fjerne en symbolsk lenke, bruk følgende unlink kommando.
$ unlink
Hvis Symlink er en katalogkobling, må du ikke legge til “/” på slutten. Dette verktøyet kan ikke fjerne kataloger.
Ødelagte lenker
En symbolsk lenke er en peker til den opprinnelige filen. Den husker plasseringen av den opprinnelige filen i skapelsesøyeblikket. Hvis den opprinnelige filen blir flyttet til et annet sted, blir den symbolske lenken gjort ødelagt.
Hvis du jobber med symbolske lenker regelmessig, kan du ofte komme over forskjellige ødelagte symboliske lenker. Ødelagte symbolske koblinger kan være forvirrende og resultere i uønskede situasjoner.
Finne ødelagte koblinger
For å finne en ødelagt lenke under en bestemt katalog, kjør følgende kommando.
$ Finn-xtype l
I utgangen, finne Kommandoen vil liste opp alle de ødelagte symbolske lenker som er funnet.
Som standard, finne vil krysse alle underkatalogene for å søke etter ødelagte symlinks. Vi kan imidlertid ekskludere symlinks som er inneholdt i underkataloger.
$ Finn-MaxDepth 1 -Xtype 1
Slette ødelagte lenker
Ved hjelp av kommandoen kan vi slette de ødelagte koblingene samtidig.
$ Finn-XTTYPE L -Delete
Konklusjon
Symboliske lenker er i utgangspunktet pekerfiler, slik at du kan fjerne dem som en vanlig fil. Alternativt kan du også bruke de dedikerte verktøyene for å fjerne symlink fra systemet. Forsikre deg om at du ikke fjerner noen symbolsk lenke som er en del av en viktig funksjon, for eksempel symlinks under katalogen "/usr/bin".
Å måtte jobbe med harde lenker? I motsetning til symbolske koblinger, er harde koblinger, som navnet antyder, mer vedvarende. Selv om det er lignende i konsept, er hard link og symlinks forskjellige. Sjekk ut denne guiden på Hard Link på Linux.
Glad databehandling!