web-dev-qa-db-fra.com

Comment mettre à jour glibc de la version 2.13 à 2.15 sur Debian?

J'ai entendu dire que je pouvais le faire en utilisant apt-get install libc6, mais je dois ajouter quelque chose à /etc/apt/sources.list pour recevoir la dernière version de glibc. Que devrais-je faire?

62
antpetr89

J'ai pu installer libc6 2.17 dans Debian Wheezy en modifiant les recommandations dans réponse de perror :

[~ # ~] important [~ # ~]
Vous devez quitter votre gestionnaire d’affichage en appuyant sur CTRL-ALT-F1. Ensuite, vous pouvez arrêter x (slim) avec Sudo /etc/init.d/slim stop

(remplacez slim par mdm ou lightdm ou peu importe)

Ajoutez la ligne suivante au fichier /etc/apt/sources.list:

deb http://ftp.debian.org/debian expérimental principal

Devrait être changé en:

deb http://ftp.debian.org/debian sid main

Suivez ensuite le reste du message de perror:

Mettez à jour votre base de données de paquets:

apt-get update

Installez le paquet eglibc:

apt-get -t sid installer libc6-AMD64 libc6-dev libc6-dbg

[~ # ~] important [~ # ~]
Après avoir mis à jour libc6, redémarrez l’ordinateur et vous devez commenter ou supprimer la source Sid que vous venez d’ajouter (deb http://ftp.debian.org/debian sid main), sinon vous risquez de mettre à niveau votre distribution entière.

J'espère que cela t'aides. Il m'a fallu un certain temps pour comprendre.

86
0E 800

En fait, vous ne pouvez pas le faire facilement en ce moment (au moment où j'écris ce message). Je vais essayer d'expliquer pourquoi.

Tout d'abord, le la glibc n'est plus , il a été intégré au projet eglibc . Et la distribution Debian est passée à eglibc il y a quelque temps (voir ici et ici et même sur la page du paquet source de glibc ). Donc, vous devriez envisager d’installer le paquetage eglibc avec ce type de commande:

apt-get install libc6-AMD64 libc6-dev libc6-dbg

Remplacer AMD64 par le type d'architecture que vous voulez (regardez la liste des paquets ici ).

Malheureusement, la version du package eglibc ne concerne que la version 2.13 dans unstable et testing. Seul le experimental fournit une version 2.17 de cette bibliothèque. Donc, si vous voulez vraiment l'avoir en 2.15 ou plus, vous devez installer le paquet depuis la version expérimentale (ce qui n'est pas recommandé). Voici les étapes à réaliser en tant que root:

  1. Ajoutez la ligne suivante au fichier /etc/apt/sources.list:

    deb http://ftp.debian.org/debian experimental main
    
  2. Mettez à jour votre base de données de paquets:

    apt-get update
    
  3. Installez le paquet eglibc:

    apt-get -t experimental install libc6-AMD64 libc6-dev libc6-dbg
    
  4. Prier...

Eh bien, c'est tous les gens.

46
perror

Votre script contient également des erreurs, par exemple si dos2unix est installé, votre installation fonctionne mais si vous n'aimez pas ce que je faisais, alors il échouera avec des problèmes de dépendance.

J'ai trouvé cela par accident alors que j'en faisais un fichier script à donner à mon ami qui est nouveau à Linux et parce que j'ai fait les scripts sous Windows, je lui ai demandé de l'installer, à l'époque je n'avais pas installé dos2unix donc je a des erreurs.

voici une copie du script que j'ai créé pour votre solution, mais vous avez installé dos2unix.

#!/bin/sh
echo "deb http://ftp.debian.org/debian sid main" >> /etc/apt/sources.list
apt-get update
apt-get -t sid install libc6 libc6-dev libc6-dbg
echo "Please remember to hash out sid main from your sources list. /etc/apt/sources.list"

ce script a été testé sur 3 machines sans erreur.

25
blackice504