#1 Le 09/02/2014, à 00:05
- nesthib
[Astuce] apt-get impossible de mettre à jour libc6
Dans le cas où apt-get refuse d'installer une nouvelle version de la bilbliothèque libc :
A copy of the C library was found in an unexpected directory:
'/lib/…/libc-2.17.so'
It is not safe to upgrade the C library in this situation;
please remove that copy of the C library or get it out of
'/lib/…' and try again.
apt-get suggère de supprimer libc avant de continuer la mise à jour, cependant libc est indispensable au fonctionnement de bash ou apt-get et sa suppression empêchera tout programme de se lancer.
L'astuce est d'effectuer une copie des bibliothèques (par exemple dans le dossier /root), de charger bash en utilisant les copies, puis de supprimer les binaires originaux avant de continuer la miser à jour.
On passe en root :
sudo -s
On copie les binaires :
cp /lib/…/libc-2.17.so /root
cp /lib/…/libdl-2.17.so /root
cp /lib/…/libm-2.17.so /root
cp /lib/…/libpthread-2.17.so /root
cp /lib/…/librt-2.17.so /root
« … » étant à remplacer par le chemin indiqué dans le message d'erreur.
On charge bash avec les copies des bibliothèques :
LD_PRELOAD=/root/libc-2.17.so:/root/libdl-2.17.so:/root/libm-2.17.so:/root/libpthread-2.17.so:/root/librt-2.17.so bash
On peut vérifier que le shell fonctionne :
ls /root
On supprime les binaires originaux :
rm /lib/…/libc-2.17.so
rm /lib/…/libdl-2.17.so
rm /lib/…/libm-2.17.so
rm /lib/…/libpthread-2.17.so
rm /lib/…/librt-2.17.so
On continue la mise à jour :
apt-get install -f
Attention à ne pas redémarrer ou quitter le terminal alors que les bibliothèques ont été supprimées et que la mise à jour n'est pas complète, ceci empêcherait le système de fonctionner correctement. S'il y avait une erreur, il faut copier à nouveau les bibliothèques de /root vers leur emplacement d'origine.
Attention à bien respecter les chemins des bibliothèques (celui ci varie selon le noyau) et le numéro de version de la bibliothèque (ici 2.17). Dans le cas où il y aurait plusieurs versions des bibliothèques il faut combiner les différents numéros de version.
GUL Bordeaux : Giroll – Services libres : TdCT.org
Hide in your shell, scripts & astuces : applications dans un tunnel – smart wget – trouver des pdf – install. auto de paquets – sauvegarde auto – ♥ awk
⃛ɹǝsn xnuᴉꞁ uʍop-ǝpᴉsdn
Hors ligne