Symbolske links.
Symbolske links er en fantastisk funktion, men de bliver ødelagt hvis man fjerner filen som linket peger på. Her vil jeg vise dig hvordan du finder dem og få dem slettet eller rettet hvis du skal bruge dem. Symbolske links eller soft links er den type som peger på filer eller biblioteker. Det ligner en normal fil i fil manageren.
Men hvis du eksempelvis har en fil som hedder minfil.txt som pejer på text-file.txt, kan du bruge cat eller less på minfil.txt og du vil se indholdet at text-file.txt. Da minfil.txt er linket til text-file.txt som soft link.
I standard linux er der mange at disse filer rundt omkring i systemet. Applikationer bruger det til installations rutiner og bruger ofte symlinks til at pege på eksekverbare filer. Når softwaren opdateres, erstattes den binære fil med den nye version, og alle symlinks fortsætter som før, så længe den nye fils navn er den samme som den gamle. Det er rigtig smart.
Find fejl Symbolske links.
For at finde de links som ikke virker, skal du bruge -xtype til find kommandoen.
$ find . -xtype l ./snap/gnome-calculator/748/.local/share/glib-2.0/schemas/org.gnome.calculator.gschema.xml ./snap/gnome-calculator/748/.local/share/themes ./snap/gnome-calculator/748/.themes ./snap/gnome-calculator/748/.config/gtk-3.0/settings.ini ./snap/gnome-calculator/826/.local/share/glib-2.0/schemas/org.gnome.calculator.gschema.xml ./snap/gnome-calculator/826/.local/share/themes ./snap/gnome-calculator/826/.themes ./snap/gnome-calculator/826/.config/gtk-3.0/settings.ini ./snap/gnome-calculator/current
Alle disse filer virker ikke mere, da deres links er væk.
At køre denne kommando hjemmebibliotek findes et par ødelagte symlinks. Bemærk, at søgningen er rekursiv som standard, så den søger automatisk i alle underbiblioteker.
Fjern fejl Symbolske links.
De ødelagte symlink kan også være et symptom på en software installation der mislykkedes. I stedet for at slette disse links skal du enten rette det manuelt eller gentage installationen af programmet.
For at fjerne alle disse links som ikke virker, som du er sikker på du kan fjerne, kan du bruge -exec parameteren til find kommandoen som vist her.
Når du bruger kommandoen kommer der ikke noget output.
$ find . -xtype l -exec rm {} \;
Når du bruger kommandoen kommer der ikke noget output. Du kan nu checke om den har fjerne alle fejl links med -xtype igen.
$ find . -xtype l
Og du vil se at der ikke findes flere fejl/broken links.