Projet

Général

Profil

ProblemeLibc6EOLE23 » Historique » Version 3

Version 2 (Gérald Schwartzmann, 05/09/2014 15:49) → Version 3/4 (Daniel Dehennin, 08/09/2014 14:13)

h1. Problème de mise à jour Ubuntu sur EOLE 2.3

Une mise à jour Ubuntu de la GNU libc en version 2.11.1-0ubuntu7.16 peut poser des problèmes.

Certains utilisateurs ont rencontrés des problèmes suite à une mise à jour Ubuntu de la libc6, entraînant des "backtraces":https://fr.wikipedia.org/wiki/Backtrace comme le suivant:

<pre>
root@server:~# apt-get update
0% [En cours]*** glibc detected *** /usr/lib/apt/methods/http: munmap_chunk(): invalid pointer: 0x00007f63340e3588 ***
======= Backtrace: =========
/lib/libc.so.6(+0x78cc6)[0x7f63332eecc6]
/lib/libc.so.6(+0x125ec9)[0x7f633339bec9]
/lib/libc.so.6(+0x12628b)[0x7f633339c28b]
/lib/libc.so.6(getservbyname_r+0x183)[0x7f633337ede3]
/lib/libc.so.6(+0xb9ff2)[0x7f633332fff2]
[...]
7fffbabff000-7fffbac00000 r-xp 00000000 00:00 0 [vdso]
ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0 [vsyscall]
E: Method http has died unexpectedly!
E: Le sous-processus http a reçu le signal 6
</pre>

Un téléchargement et une installation manuelle des paquets en rapport à la GNU libc corrigent le problème.

Afin de télécharger les bons paquets, il faut vérifier :

* L’architecture utilisée :
<pre>
root@server:~# uname -m
x86_64
root@server:~# dpkg --print-architecture
amd64
</pre>
* La liste des paquets venant avec la libc6 :
<pre>
root@server:~# apt-get --reinstall install libc6
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances
Lecture des informations d'état... Fait
Les paquets suivants ont été installés automatiquement et ne sont plus nécessaires :
python-imaging libdb4.7 libtommath0
Veuillez utiliser « apt-get autoremove » pour les supprimer.
Les paquets supplémentaires suivants seront installés :
libc-bin libc6-i386
Paquets suggérés :
glibc-doc
Les paquets suivants seront mis à jour :
libc-bin libc6 libc6-i386
3 mis à jour, 0 nouvellement installés, 0 à enlever et 13 non mis à jour.
Il est nécessaire de prendre 9 070ko dans les archives.
Après cette opération, 0o d'espace disque supplémentaires seront utilisés.
Souhaitez-vous continuer [O/n] ? o
0% [En cours]*** glibc detected *** /usr/lib/apt/methods/http: munmap_chunk(): invalid pointer: 0x00007f828895c588 ***
</pre>
* La version du paquet libc6 qui serait installée par une mise à jour :
<pre>
root@server:~# apt-cache policy libc6
libc6:
Installé : 2.11.1-0ubuntu7.14
Candidat : 2.11.1-0ubuntu7.16
Table de version :
2.11.1-0ubuntu7.16 0
500 http://ftp.crihan.fr/ubuntu/ lucid-security/main Packages
500 http://ftp.crihan.fr/ubuntu/ lucid-updates/main Packages
*** 2.11.1-0ubuntu7.14 0
100 /var/lib/dpkg/status
2.11.1-0ubuntu7 0
500 http://ftp.crihan.fr/ubuntu lucid/main Packages
</pre>

Dans l’exemple ci-dessus, il faut obtenir les fichiers "deb":https://fr.wikipedia.org/wiki/Deb des paquets *@libc-bin@*, *@libc6@* et *@libc6-i386@* en version *@2.11.1-0ubuntu7.16@* pour l’architecture *@AMD64@* de la distribution Lucid Lynx.

Les URLs de téléchargement sont accessibles aux pages suivantes :

* https://launchpad.net/ubuntu/lucid/amd64/libc-bin/2.11.1-0ubuntu7.16
* https://launchpad.net/ubuntu/lucid/amd64/libc6/2.11.1-0ubuntu7.16
* https://launchpad.net/ubuntu/lucid/amd64/libc6-i386/2.11.1-0ubuntu7.16

Vous devez télécharger les fichiers avec "wget":https://en.wikipedia.org/wiki/Wget puis les installer avec "dpkg":https://en.wikipedia.org/wiki/Dpkg :

<pre>
root@server:~# mkdir libc6-fix && cd libc6-fix
root@server:~/libc6-fix# root@server:~# wget http://launchpadlibrarian.net/183374230/libc-bin_2.11.1-0ubuntu7.16_amd64.deb
root@server:~/libc6-fix# root@server:~# wget http://launchpadlibrarian.net/183374224/libc6_2.11.1-0ubuntu7.16_amd64.deb
root@server:~/libc6-fix# root@server:~# wget http://launchpadlibrarian.net/183374232/libc6-i386_2.11.1-0ubuntu7.16_amd64.deb
root@server:~/libc6-fix# root@server:~# dpkg -i *.deb
</pre>