Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 12/10/2012, à 03:20

Martial34

[RÉSOLU] Liens cassés

Bonjour.
Existe-t-il un script (ou un système quelconque) pour voir les liens cassés qui encombrent le système de fichiers, afin de les supprimer ?
Merci.

Dernière modification par Martial34 (Le 13/10/2012, à 23:08)

En ligne

#2 Le 12/10/2012, à 08:25

serged

Re : [RÉSOLU] Liens cassés

find est ton ami !

find -L -type l

LinuxMint Vera Cinnamon et d'autres machines en MATE, XFCE... 20.x , 21.x ou 19.x
Tour : Asus F2A55 / AMD A8-5600K APU 3,6GHz / RAM 16Go / Nvidia GeForce GT610 / LM21.1 Cinnamon
Portable : LDLC Mercure MH : Celeron N3450 /RAM 4Go / Intel HD graphics 500 i915 / biboot Win 10 (sur SSD) - LM21.1 MATE (sur HDD)

Hors ligne

#3 Le 12/10/2012, à 11:20

Martial34

Re : [RÉSOLU] Liens cassés

Merci. J’obtiens ça :

martial@martial:~$ find -L -type l
./.mozilla/firefox/0q0fibw3.default/lock
martial@martial:~$

Que faut-il faire ensuite ?

En ligne

#4 Le 12/10/2012, à 15:22

serged

Re : [RÉSOLU] Liens cassés

Martial34 a écrit :

Merci. J’obtiens ça :

martial@martial:~$ find -L -type l
./.mozilla/firefox/0q0fibw3.default/lock
martial@martial:~$

Que faut-il faire ensuite ?

Rien de spécial...
Vu que cd "lock" est dans la cuisine interne de Firefox...

Pour voir tous les liens cassées in faut partir de la racine :

cd /
find -xdev  -L -type l

(le -xdev pour éviter de parcourir les fs "spéciaux")
Éventuellement précédé [le find] d'un sudo ou suivi d'un 2>/dev/null pour éviter les erreurs de droit.
Mais je suppose que tu avais compris...


LinuxMint Vera Cinnamon et d'autres machines en MATE, XFCE... 20.x , 21.x ou 19.x
Tour : Asus F2A55 / AMD A8-5600K APU 3,6GHz / RAM 16Go / Nvidia GeForce GT610 / LM21.1 Cinnamon
Portable : LDLC Mercure MH : Celeron N3450 /RAM 4Go / Intel HD graphics 500 i915 / biboot Win 10 (sur SSD) - LM21.1 MATE (sur HDD)

Hors ligne

#5 Le 12/10/2012, à 21:43

Martial34

Re : [RÉSOLU] Liens cassés

Ce n’est pas gagné :

martial@martial:/$ find -xdev  -L -type l
find: prédicat inconnu « -L »
martial@martial:/$

martial@martial:/$ sudo find -xdev  -L -type l
find: prédicat inconnu « -L »
martial@martial:/$ find -xdev  -L -type l 2>/dev/null
martial@martial:/$

Dernière modification par Martial34 (Le 12/10/2012, à 21:50)

En ligne

#6 Le 13/10/2012, à 08:53

serged

Re : [RÉSOLU] Liens cassés

Bon, à l'envers, alors :

find -L -xdev  -type l

L'ordre des paramètres de find est bien mystérieux...

Par contre chez moi, j'ai une erreur mystérieuse :

$ find  -L -xdev -type l
find: Boucle détectée dans le système de fichiers ; ""./lib/recovery-mode/recovery-mode"" est dans la même boucle que "./lib/recovery-mode".
...

C'est normal ?


LinuxMint Vera Cinnamon et d'autres machines en MATE, XFCE... 20.x , 21.x ou 19.x
Tour : Asus F2A55 / AMD A8-5600K APU 3,6GHz / RAM 16Go / Nvidia GeForce GT610 / LM21.1 Cinnamon
Portable : LDLC Mercure MH : Celeron N3450 /RAM 4Go / Intel HD graphics 500 i915 / biboot Win 10 (sur SSD) - LM21.1 MATE (sur HDD)

Hors ligne

#7 Le 13/10/2012, à 09:05

pingouinux

Re : [RÉSOLU] Liens cassés

Bonjour,
Je ne sais pas si c'est normal, mais j'ai la même chose. Le lien /lib/recovery-mode/recovery-mode pointe sur le répertoire dans lequel il se trouve.

Hors ligne

#8 Le 13/10/2012, à 11:08

Postmortem

Re : [RÉSOLU] Liens cassés

Salut,
En couplant find et stat :

find / /tmp /home -xdev -type l -exec bash -c 'stat -L "$0" &> /dev/null; (( $? )) && printf "Lien cassé : %s\n" "$0"' {} \;

Sinon, pour les erreurs de boucle, ça doit être parce qu'en suivant les liens, grâce à l'option -L, find tournerait en rond.


Mot' a dit : « Un Hellfest sans Slayer, c'est comme une galette-saucisse sans saucisse ! »

Hors ligne

#9 Le 13/10/2012, à 23:07

Martial34

Re : [RÉSOLU] Liens cassés

Formidable ! Le script de Postmortem m’a permis de trouver une bonne centaine de liens cassés. Merci à tous. smile

En ligne