I neste artikkel skal vi ta en titt på hvordan du finner og fjerner ødelagte symlinker i Ubuntu. Symbolske lenker er en måte å forenkle administrasjonen av et Gnu / Linux-system på. Disse brukes på både servere og arbeidsstasjoner, der kobling fra en katalog til en annen brukes til applikasjoner for å sende informasjon andre steder i katalogtreet.
Un symbolsk lenke på Unix- eller Gnu / Linux-systemer, indikerer det tilgang til en eksisterende katalog eller fil som er på et annet sted i katalogstrukturen. En endring som gjøres ved hjelp av denne lenken, vil gjenspeiles i originalen, men tvert imot, hvis lenken fjernes, vil ikke filen eller katalogen den henviser til ikke bli fjernet. Et annet mindre vanlig alternativ er å bruke en hard link (hard lenke). I dette tilfellet vil sletting av lenken føre til sletting av filen eller katalogen, hvis det var den siste harde lenken til filen.
En fordel med den symbolske lenken over harde koblinger er at det er mulig å lage symbolske lenker som peker på objekter i filsystemer som finnes på andre enheter, eller til partisjoner innenfor samme enhet. Kommandoen som vanligvis brukes til å administrere lenker (både harde og symbolske) er ln.
Symlinks, et verktøy for å administrere symbolske lenker
Det er et program som heter symlenker i de fleste Gnu / Linux-arkiver. Dette er et enkelt kommandolinjeprogram, som vil gi nyttige resultater og alternativer for å administrere symbolske lenker. Til installer dette verktøyet på Ubuntu, vi trenger bare å åpne en terminal (Ctrl + Alt + T) og utføre kommandoen:
sudo apt install symlinks
Med symlinker kan vi bruke forskjellige alternativer for å jobbe med symbolske lenker. Blant dem kan vi markere alternativet -d, som fjerner koblingene som blir hengende igjen. Et annet interessant å vite er alternativet -r, som vil gjøre rekursivt gjennom underkatalogene ethvert alternativ som vi spesifiserer for dette verktøyet.
Et grunnleggende eksempel
For å starte med dette eksemplet, la oss først opprette en symbolsk lenke. Vi kan gjøre dette ved å ta en eksisterende fil og bruker ln-kommandoen for å koble den til en fil som ikke eksisterer ennå. Kommandoene for å lage dette eksemplet vil være følgende:
touch archivo-ejemplo.txt ln -s archivo-ejemplo.txt link-archivo-ejemplo.txt
Så skal vi bruke kommandoen ls for å kontrollere at lenken vi nettopp opprettet allerede eksisterer i systemet vårt.
Den neste tingen vi vil gjøre er bryt symlinken vi nettopp opprettet.
rm archivo-ejemplo.txt
Selv om vi nettopp slettet originalfilen, som du kan se i forrige skjermbilde, kommandoen Jeg rapporterer fortsatt at lenken fortsatt er der. Det er her problemet ligger, da denne lenken vil bli sittende fast i en fil som ikke lenger eksisterer. Filene i dette eksemplet kan også være i forskjellige kataloger, noe som kan gjøre det vanskeligere å sjekke om originalfilen fortsatt er der.
Finn og reparer ødelagte symbolske lenker
Måten å fikse ødelagte symlinker på er å fjerne dem. Det er umulig å gjenopprette dem, så vi trenger bare slett dem fra katalogtreet.
Til se etter ødelagte symlinker la oss bruke verktøyet symlinks. Vi trenger bare å bruke følgende kommando:
symlinks .
Det er viktig å være oppmerksom på poenget (.) på slutten av kommandoen, da den indikerer gjeldende arbeidskatalog. Dette kan endres med hvilken som helst sti for å indikere en katalog der vi prøver å søke. Den forrige kommandoen viser oss en utgang som følger:
Indikerer at 'link-file-example.txt"henger og at den symbolske lenken er brutt. For å eliminere det, trenger vi bare å bruke den samme kommandoen som før, og legge til alternativet -d:
symlinks -d .
Utgangen som terminalen vil returnere vil vise noe som ligner på forrige gang, men denne gangen vil den også inkludere linjen 'slettet'.
Fortsetter vi med forrige eksempel, hvis vi ikke hadde brukt den siste kommandoen, for å søke etter ødelagte symbolske lenker kan vi også bruke finn som følger:
find . -xtype l
Som med symlink-verktøyet, er perioden (.) representerer den gjeldende arbeidskatalogen. Til fjern de ødelagte symbolske koblingene, vi trenger bare å legge til alternativet -slette som det er vist i det følgende:
find . -xtype l -delete
Denne kommandoen vil ikke vise noen resultater, men hvis vi utfører den igjen uten alternativet -Slett, vil vi ikke se noe på skjermen. Dette vil være en indikasjon på at de ødelagte symbolske koblingene er fjernet.
avinstallere
Avinstaller symlinker det er så enkelt som å installere det. Vi trenger bare å åpne en terminal (Ctrl + Alt + T) og utføre kommandoen:
sudo apt remove symlinks
Med disse enkle trinnene kan alle brukere finn knuste symlenker lett, og fjern dem før de kan forårsake problemer.