• # résolu

    Posté par (site web personnel) . En réponse au message Réinstaller/reconfigurer tous les paquets installés. Évalué à 2.

    Bon, ben j'avais du temps à perdre alors j'ai résolu mon problème...
    La méthode fut en gros la suivante:

    • récup des paquets installés: dpkg -l | grep ii | awk '{print 2ドル}' > all
    • sauvegarde: cp all all1
    • Boucle
    • sudo aptitude reinstall cat all1 2>&1 | grep "find a source" | awk '{print 11ドル}' | head -1 | sed -e "s/'//g" > pkg
    • l'aptitude ci-dessus échoue, car debian ne peut pas réinstaller un paquet obsolète dont on a pas les sources. Par ailleurs, ce paquet est en conflit avec une version plus récente, installée mais pas configurée. Je récupère donc son nom.
    • Retirage du paquet conflictuel de ma liste des paquets à réinstaller: cat all1 | grep -v cat pkg | sed -e's/:i386//' -e's/:amd64//' > all2
    • mv all2 all1
    • Ajout du paquet à la liste des paquets à désinstaller: cat pkg >> toDelete
    • puis je désinstalle les paquets conflictuels, et je peux enfin faire un aptitude reinstall de tous les autres, maintenant que ça ne va plus planter. Un reboot, et youpi ca marche \o/

    Bilan 1 : c'est nul qu'on puisse pas detecter les conflits et automatiser la désinstallation des versions obsolètes.
    Bilan 2 : les scripts, ça fait vraiment gagner du temps!