Contenu | Rechercher | Menus

Annonce

Ubuntu-fr.org recrute toujours de nouveaux modérateurs, avec de l'expérience.

Ubuntu 16.04 LTS
Réservez vos DVD et clé USB Ubuntu-fr (premières livraisons mi-mai)

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

M.A.J. en cours du forum possibilité de bug, nous faisons le maximum pour les résoudre au plus vite

#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

Linux-Mint Rosa 64 (Cinnamon) sur ASUS F2A55/AMD A8-5600K APU

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...


Linux-Mint Rosa 64 (Cinnamon) sur ASUS F2A55/AMD A8-5600K APU

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 ?


Linux-Mint Rosa 64 (Cinnamon) sur ASUS F2A55/AMD A8-5600K APU

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.

En 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.


Trusty Tahr (64 bits)

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