#1 Le 18/11/2009, à 17:56
- zeugme
maj un package au delà de la version prévue dans la distrib
Bonjour a tous,
Comment mettre à jour un package au delà de la version prévue dans la distrib ?
Je m'explique :
J'utilise des serveurs en hardy et une installation classique d'Apache prends la 2.2.8.
Or, à cause d'un bug bien précis dans Apache, je souhaite mettre à jour apache, par exemple en utilisant la dernière 2.2.14 qui se trouve être propose dans la distrib lucid.
Naturellement, je ne souhaite/peux pas mettre à jour toute la distrib de hardy -> lucid, pas question ...
Du coup, comment faire pour forcer le passage d'apache en 2.2.14, sans toucher à la distrib et en restant avec la gestion des paquets (sans faie el'installation à la main) et donc en mettant à jour d'éventuelles dépendances sans conflits :-)
J'utilise aptitude en mode texte.
Pour l'instant je ne trouve pas, si quelqu'un sait ... merci pour vos lumières !
Dernière modification par zeugme (Le 18/11/2009, à 18:05)
Hors ligne
#2 Le 18/11/2009, à 18:06
- olsman037
Re : maj un package au delà de la version prévue dans la distrib
Salut
Je pense qu'il te faut soit un nouveau depot pour ce logiciel en particulier (jette un oeil dans les ppa lauchpad), ou alors telecharger le .deb, qui sera visible dans synaptic et l'installation est très facile...
Sony Vaio VPC-SB1C5E, i7-2620M, 8Go, GPU AMD 6470M avec triple boot W7, Ubuntu 10.10 et Arch...
Galère les nouveaux sony sous linux!!!! (switch AMD/Intel, touchpad, ethernet,....)
Hors ligne
#3 Le 18/11/2009, à 18:08
- zeugme
Re : maj un package au delà de la version prévue dans la distrib
Salut
Je pense qu'il te faut soit un nouveau depot pour ce logiciel en particulier (jette un oeil dans les ppa lauchpad), ou alors telecharger le .deb, qui sera visible dans synaptic et l'installation est très facile...
Merci pour ta réponse, en fait, je me suis trompé, c'est aptitude que j'utilise ... m'enfin çà change pas ta réponse.
Donc, télécharger le .deb et y aller à coup de dpkg, cela va t-il me gérer les dépendances ?
Et ensuite, comment seraient gérées les mises à jour de sécurité si je suis parti du .deb moi même ?
Dernière modification par zeugme (Le 18/11/2009, à 18:09)
Hors ligne
#4 Le 18/11/2009, à 18:08
- Michel Leunen
Re : maj un package au delà de la version prévue dans la distrib
Regarde si le paquet n'est pas disponible dans les dépôts backports. Sinon, il va falloir que tu l'installes depuis les sources téléchargées sur le site d'apache. Mais c'est moins facile et pose souvent des problèmes de dépendances.
Michel Leunen
http://linux.leunen.com
Hors ligne
#5 Le 18/11/2009, à 18:10
- zeugme
Re : maj un package au delà de la version prévue dans la distrib
Regarde si le paquet n'est pas disponible dans les dépôts backports. Sinon, il va falloir que tu l'installes depuis les sources téléchargées sur le site d'apache. Mais c'est moins facile et pose souvent des problèmes de dépendances.
Merci pour ta réponse, mais non, je fais pas çà sur mes serveurs ... autant ne pas avoir de gestionnaires de paquets dans ce cas
Hors ligne
#6 Le 18/11/2009, à 18:13
- olsman037
Re : maj un package au delà de la version prévue dans la distrib
En telechargeant le paquet ca va te gerer les dépendance (en tout cas te dire si il manque des paquets, et il te faudra aller les chercher si ils ne sont pas dispo dans les dépots), par contre pour les mises à jour de sécurité c'est mort...
Sony Vaio VPC-SB1C5E, i7-2620M, 8Go, GPU AMD 6470M avec triple boot W7, Ubuntu 10.10 et Arch...
Galère les nouveaux sony sous linux!!!! (switch AMD/Intel, touchpad, ethernet,....)
Hors ligne
#7 Le 18/11/2009, à 18:22
- zeugme
Re : maj un package au delà de la version prévue dans la distrib
En telechargeant le paquet ca va te gerer les dépendance (en tout cas te dire si il manque des paquets, et il te faudra aller les chercher si ils ne sont pas dispo dans les dépots), par contre pour les mises à jour de sécurité c'est mort...
Donc, je fais pas çà non plus sur mes serveurs !
Une autre idée ?
Hors ligne
#8 Le 18/11/2009, à 18:34
- olsman037
Re : maj un package au delà de la version prévue dans la distrib
Euh je vais peut-être dire une bêtise... mais quand on rajoute un depot, c'est une adresse où il va chercher les paquets dispo...
genre sur ce serveur...
http://fr.archive.ubuntu.com/ubuntu/
Est-ce que c'est possible de mettre une autre adresse.... Pour toi ce serait la partie du depot pour apache2 dans lucid
http://fr.archive.ubuntu.com/ubuntu/pool/main/a/apache2/
Si ca marche, les paquets dépendance sont dans le même dossier du serveur (ca tombe bien!!)
Après c'est une idée de newbie... j'ai pas mon karmic pour tenter ca mais ca se tente non ?
Sony Vaio VPC-SB1C5E, i7-2620M, 8Go, GPU AMD 6470M avec triple boot W7, Ubuntu 10.10 et Arch...
Galère les nouveaux sony sous linux!!!! (switch AMD/Intel, touchpad, ethernet,....)
Hors ligne
#9 Le 18/11/2009, à 18:44
- olsman037
Re : maj un package au delà de la version prévue dans la distrib
ah non tu as des dépendance de dépendance dans d'autre dossier...
http://packages.ubuntu.com/fr/lucid/apache2.2-common
edit : ca me parait compliqué et un peu (beaucoup ) hasardeux mon histoire!!!
Dernière modification par olsman037 (Le 18/11/2009, à 18:45)
Sony Vaio VPC-SB1C5E, i7-2620M, 8Go, GPU AMD 6470M avec triple boot W7, Ubuntu 10.10 et Arch...
Galère les nouveaux sony sous linux!!!! (switch AMD/Intel, touchpad, ethernet,....)
Hors ligne
#10 Le 19/11/2009, à 10:01
- zeugme
Re : maj un package au delà de la version prévue dans la distrib
OK, donc en résumé, c'est pas possible ?
Quand on installe une distrib, on est ensuite, pour certain de ces composants (ici apache) scotché à la version de la distrib ?
Hors ligne
#11 Le 19/11/2009, à 11:03
- Michel Leunen
Re : maj un package au delà de la version prévue dans la distrib
Non, pas du tout, à condition que tu fasses l'install à la main mais ça implique aussi que les mise à jour de sécurité ne te sont pas proposées automatiquement et que donc c'est à toi d'y veiller. C'est déconseillé mais indispensable si le bug, face auquel tu te trouves, est un showstopper pour toi et que tu dois absolument trouver une solution.
Faut juste peser le pour et le contre.
Michel Leunen
http://linux.leunen.com
Hors ligne
#12 Le 19/11/2009, à 11:55
- zeugme
Re : maj un package au delà de la version prévue dans la distrib
oui j'entends bien, c'est ce que j'appelle impossible parce que gérer des serveurs de prod où on doit veiller aux patchs de sécurité à la main, c'est comme si on donnait directement le mot de passe root aux hackers
En fait, c'est un bug qui m'empêche de renforcer la sécurité, donc si le dois réduire la sécurité pour la renforcer, je choisi de ne rien faire !
La question est bien de forcer une version dans le cadre du gestionnaire de paquage, ici aptitude.
J'arrive pas encore à me convaincre que c'est absolument impossible ... je vais continuer de creuser avec votre aide
Dernière modification par zeugme (Le 19/11/2009, à 12:02)
Hors ligne
#13 Le 19/11/2009, à 13:10
- Keldath
Re : maj un package au delà de la version prévue dans la distrib
Ce que je vais te proposer peut très bien ne pas marcher. Essaie d'abord sur une machine de test ou avec l'option simulation d'aptitude (option -s).
Si tu veux obtenir la version d'un paquet d'un dépôt précis (par exemple le dépôt de lucid, que tu devras rajouter bien sûr) sans MAJ tout le reste de la distrib, et tout en conservant les MAJ de sécu pour le paquet désiré, tu crées le fichier /etc/apt/preferences comme ceci :
Package: *
Pin: release a=lucid
Pin-Priority: 200
Puis tu installes le paquet désiré comme ceci :
sudo aptitude -t lucid install apache2
Voir, avec simulation :
sudo aptitude -s -t lucid install apache2
Si déjà ça ça marche sans soucis de dépendances majeur (genre si tu vois la libc6 ou autre paquet important dans le lot qui doit être upgradé, oublie mon idée), il te faudra rajouter plus tard dans ce fichier preferences les mêmes directives pour les dépôts lucid-updates et lucid-security (non-existant à ce jour).
Dernière modification par Keldath (Le 19/11/2009, à 13:12)
Hors ligne
#14 Le 19/11/2009, à 14:46
- zeugme
Re : maj un package au delà de la version prévue dans la distrib
Ah !, Ca sent le début de solution cetet réponse
Merci. Voyons cela ...
Ce que je vais te proposer peut très bien ne pas marcher. Essaie d'abord sur une machine de test ou avec l'option simulation d'aptitude (option -s).
Oui, bien sur.
Si tu veux obtenir la version d'un paquet d'un dépôt précis (par exemple le dépôt de lucid, que tu devras rajouter bien sûr) sans MAJ tout le reste de la distrib, et tout en conservant les MAJ de sécu pour le paquet désiré, tu crées le fichier /etc/apt/preferences comme ceci :
Package: * Pin: release a=lucid Pin-Priority: 200
Cela suppose de modifier le fichier sources.list et de le faire pointer vers lucid, c'est çà ?
Si oui, cela ne va t-il pas me proposer ou tenter une mise à jour de la distrib ?
Comment dire que tout doit rester en hardy ?
Est-ce que ton fichier de preference ne serait pas plutôt :
Package: *
Pin: release a=[b]hardy[/b]
Pin-Priority: 200
et ensuite, pour forcer l'install de apache avec le depot lucid, on utilise l'option -t que je ne connaissais pas :
sudo aptitude -s -t lucid install apache2
ainsi on garantirais que tout reste bien en hardy.
Qu'en pense tu ?
Si déjà ça ça marche sans soucis de dépendances majeur (genre si tu vois la libc6 ou autre paquet important dans le lot qui doit être upgradé, oublie mon idée)
Oui bien sur, sinon, c'est mort ...
il te faudra rajouter plus tard dans ce fichier preferences les mêmes directives pour les dépôts lucid-updates et lucid-security (non-existant à ce jour).
Ca serait pas plusot dans sources.list ???
Dernière modification par zeugme (Le 19/11/2009, à 14:47)
Hors ligne
#15 Le 19/11/2009, à 18:12
- Michel Leunen
Re : maj un package au delà de la version prévue dans la distrib
Est-ce que ton fichier de preference ne serait pas plutôt :
Package: * Pin: release a=[b]hardy[/b] Pin-Priority: 200
Non, c'est bien lucid.
Jette un oeil sur ce lien qui explique comment ça fonctionne. C'est pour Debian mais c'est la même chose pour Ubuntu:
http://ubunteros.tuxfamily.org/spip.php … urces&Pref
Keldath a écrit :il te faudra rajouter plus tard dans ce fichier preferences les mêmes directives pour les dépôts lucid-updates et lucid-security (non-existant à ce jour).
Ca serait pas plusot dans sources.list ???
Non, c'est bien /etc/apt/preferences. Voir le lien ci-dessus.
Michel Leunen
http://linux.leunen.com
Hors ligne
#16 Le 19/11/2009, à 20:19
- Keldath
Re : maj un package au delà de la version prévue dans la distrib
Cela suppose de modifier le fichier sources.list et de le faire pointer vers lucid, c'est çà ?
Il te faut rajouter les dépôts de Lucid dans le sources.list oui (ainsi que Lucid-Updates et Lucid-Security plus tard quand ils paraîtront).
Si oui, cela ne va t-il pas me proposer ou tenter une mise à jour de la distrib ?
Comment dire que tout doit rester en hardy ?
Sans le fichier /etc/apt/preferences oui, mais avec (et remplit comme je te l'ai indiqué) non.
En fait, par défaut les dépôts ont une priorité de 500 (généralement, y'a des exceptions et ça peut se paramétrer côté dépôt, mais passons), c'est pour ça qu'on ne les renseigne pas dans /etc/apt/preferences. Pour consulter les différentes priorités des dépôts :
$ apt-cache policy
Et pour un paquet précis :
$ apt-cache policy apache2
Quand tous les dépôts ont une priorité de 500 ça signifie grossomodo que le logiciel le plus récent disponible sera installé, quel que soit son dépôt d'origine. Mais en modifiant cette priorité à 200 pour les dépôts dont on veut contrôler précisément, ils ont une priorité inférieure aux autres, donc n'entraîneront aucune MAJ dans le fonctionnement normal du gestionnaire de paquet.
Et c'est là qu'on en arrive à l'option '-t', qui permet de donner temporairement une priorité de 990 au dépôt indiqué en paramètre. Donc la commande :
$ sudo aptitude install apache2
donnera ces priorités :
hardy : 500
hardy-updates : 500
hardy-security : 500
lucid : 200
et installera le paquet apache2 le plus récent parmis les dépôts hardy, hardy-updates et hardy-security.
Tandis que la commande :
$ sudo aptitude -t lucid install apache2
donnera ces priorités :
hardy : 500
hardy-updates : 500
hardy-security : 500
lucid : 990
et installera le paquet apache2 du dépôt lucid. Et comme celui-ci aura une version sûrement supérieure à celui présent dans les dépôts d'Hardy, il ne subira aucune MAJ de ces dépôts. Par contre il obtiendra les futures MAJ du dépôt Lucid.
Tout ça, c'est ce qu'on appelle le pinning, très courant sous Debian (peu répandu sous Ubuntu, mais ça marche pareil)
Dernière modification par Keldath (Le 19/11/2009, à 20:24)
Hors ligne
#17 Le 19/11/2009, à 21:21
- zeugme
Re : maj un package au delà de la version prévue dans la distrib
C'est génial et semble résoudre exactement mon problème.
Je creuse, je teste et je reviens vous dire
Merci !
Hors ligne