Forum Linux.debian/ubuntu forcer l'install de libc6... (ma sid est toute cassée /o\ )

Posté par  (site Web personnel) .
Étiquettes : aucune
0
30
juil.
2012

j'ai un double boot avec deux debian sid (j'avais une sid, j'ai récupéré un disque dur ssd, j'ai fait une nouvelle install et j'ai gardé l'autre "au cas où")

j'ai eu des petits soucis avec aptitude entre autre par-ce que j'ai testé d'installer des paquets de l'architecture i386 mais c'est pas le problème principal. Bref, en essayant de réparer tous mes paquets pété j'ai voulu réinstaller libc6 et gcc-4.7-base mais au final je me suis juste retrouvé avec les 2 désinstallés.
Forcément, dans ce cas là plus rien ne marche :-/

j'ai récupéré ld-linux-x86-64.so ainsi que ce que j'avais dans /lib/x86_64-linux-gnu depuis ma debian qui fonctionnait vers celle pétée.

Maintenant celle qui marchait pas refonctionne. Sauf que c'est la chine au niveau des paquets, entre autre, étant donné que j'ai copié des fichiers à la main. L'erreur en question est :
A copy of the C library was found in an unexpected directory: '/lib/x86_64-linux-gnu/ld-2.13.so'
it is not safe to upgrade the C library in this situation;

et après il me demande de déplacer le fichier. sauf que si je le déplace, bein forcément plus rien ne marche à nouveau…

Du coup si vous aviez la moindre piste pour que je puisse avoir une réinstall propre sans avoir à réinstaller le système complet, ce serait royal :p

Je fouille google depuis quelques temps mais je trouve pas grand chose de pertinent.

  • # Planquer ta libc ailleurs le temps de l'installation ?

    Posté par  . Évalué à 2.

    Tu la mets en /usr/lib/x86_64-linux-gnu/ld-2.13.so par exemple.

    THIS IS JUST A PLACEHOLDER. YOU SHOULD NEVER SEE THIS STRING.

  • # Force ?

    Posté par  . Évalué à 3.

    Tu as essayé les options de force de dpkg ? À mon avis un --force-overite ou, au pire, un --force-all devrait résoudre le problème.

    « Rappelez-vous toujours que si la Gestapo avait les moyens de vous faire parler, les politiciens ont, eux, les moyens de vous faire taire. » Coluche

    • [^] # Re: Force ?

      Posté par  (site Web personnel) . Évalué à 1.

      je viens d'essayer et j'ai la même erreur

      • [^] # Re: Force ?

        Posté par  . Évalué à 3.

        Et si tu regarde avec dpkg -L libc6 pour voir où la libc doit normalement être et ensuite déplacêr la libc au bon endroit et retenter l'installation (avec --force si nécessaire) ?

        « Rappelez-vous toujours que si la Gestapo avait les moyens de vous faire parler, les politiciens ont, eux, les moyens de vous faire taire. » Coluche

        • [^] # Re: Force ?

          Posté par  (site Web personnel) . Évalué à 1.

          Avec cette commande, il m'affiche que le fichier de conf.

          Par le fichier de conf, je sais que la libc devrait être dans /lib/x86_64-linux-gnu.

          J'ai essayé de la copier, de modifier le fichier de conf, de lancer ldconfig -v mais si je supprime le répertoire de base, il prend pas en compte ma copie

  • # [solution] Modification du paquet

    Posté par  (site Web personnel) . Évalué à 1.

    Une solution que j'ai trouvé c'est de modifier le paquet, j'ai pas trop cherché à comprendre tout ce qu'il faisait vu que là il est tard mais les scripts sont pas très gros donc ça pourrait être simple de faire ça plus intelligemment, mais en gros j'ai suivi ce qui est dis là : http://yeupou.wordpress.com/2012/07/21/modifying-preinst-and-postinst-scripts-before-installing-a-package-with-dpkg/

    aptitude download libc6
    dpkg-deb --extract libc6_2.13-33_amd64.deb libc
    dpkg-deb --control libc6_2.13-33_amd64.deb libc/DEBIAN
    
    

    Then we can edit libc/DEBIAN/preinst (I commented out the exit 1 after the safety warning)

    dpkg-deb --build libc
    dpkg -i libc.deb
    
    

    sauf que pour ma part j'ai supprimé tous les scripts et j'ai supprimé lib/x86/ld-linux

    Au moins le paquet s'install sans gueuler, là je tente un update mais ça devrait aller je pense.

    Merci de l'aide, et dans mon malheur j'ai appris plein de trucs sur la libc au passage XD

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n’en sommes pas responsables.