Comment puis-je mettre à niveau PHP vers une version supérieure pour Debian Squeeze?

16

Actuellement, mon PHP est sur 5.3.3, comment puis-je le mettre à jour? Comment puis-je mettre à niveau quoi que ce soit? Par exemple, si je souhaite également mettre à niveau phpMyAdmin?

Doug
la source

Réponses:

21

Mettez à niveau tous les packages:

apt-get update; apt-get upgrade;

Si vous souhaitez mettre à jour un seul paquet (par exemple php5):

apt-get update; apt-get install php5;

Pour les versions de paquetages disponibles sur Debian, jetez un œil à:

http://www.debian.org/distrib/packages

Si vous souhaitez installer php5 5.4.4-2, qui n'est disponible que sur wheezy, vous devez ajouter wheezy à votre /etc/apt/sources.list:

deb http://ftp.us.debian.org/debian/ wheezy main non-free contrib

puis:

apt-get update
apt-get install -t wheezy php5

Pour ne pas avoir de surprise, vous devez utiliser l'épinglage apt afin d'empêcher que votre système n'installe des paquets à partir de Wheezy, il suffit de créer le fichier / etc / apt / preferences

Package: *
Pin: release n=squeeze
Pin-Priority: 650

Package: *
Pin: release n=wheezy
Pin-Priority: -10

Ainsi, lorsque vous effectuez l'installation d'apt-get, si vous ne spécifiez pas -t wheezy, il installera par défaut le package à partir de squeeze.

Daniel Prata Almeida
la source
1
Le seul php5 disponible sur est 5.3.3: packages.debian.org/squeeze/php5 Comment puis-je le mettre à niveau vers une version supérieure? Ou est-ce que je manque quelque chose?
Doug
Y a-t-il un inconvénient à installer à partir de Wheezy?
Doug
Non, Wheezy est assez stable, il a été gelé le 30 juin et sera publié sous le prochain Debian 7.
Daniel Prata Almeida
Une mention aux rétroportages serait bien ici, ainsi que d'expliquer brièvement comment utiliserapt-get source apt-get build-dependencies debuild
dawud
13

L'épinglage va vous mettre dans un enfer de dépendance, comme @Juan l'a remarqué. Quand je veux être à l'avant-garde de mes systèmes Debian, je me tourne généralement vers http://www.dotdeb.org/

Pour des instructions appropriées -> http://www.dotdeb.org/instructions/

foocorpluser
la source
3
Bien que cela puisse théoriquement répondre à la question, il serait préférable d'inclure ici les parties essentielles de la réponse et de fournir le lien de référence.
Scott Pack
Je ne suis pas d'accord, la source canonique pour savoir comment installer dot deb sera toujours leur site, le paraphrasant ici ne fournira pas un service fiable. (en supposant que le document change un jour) Bien sûr, si quelqu'un a une question sur le document d'installation, le défaut de serveur serait un bon endroit pour le vider.
foocorpluser
1
L'un des objectifs de StackOverflow, et par extension du reste des sites, était d'éliminer le gâchis spaghetti des liens pour ce type d'informations. Que nous ne soyons pas d'accord ou non sur ces sites, le mécanisme de stockage des informations est un objectif majeur du système.
Scott Pack
1
Je voudrais pointer les gens loin de DotDeb (réponse ci-dessus) - cela n'a pas fonctionné comme ils l'ont dit, et quand j'ai chassé partout sur leur site Web, il n'y a pas où poser des questions, pas d'email, pas de forum, pas de contact et aucune aide du tout. Certains diront que cela pourrait être un niveau de connaissances qui me manque. Cependant, pour ma défense, il y a simplement des dépendances manquantes dans leur solution car j'ai essayé d'installer php56 sur mon système Debian 7. Le message directement d'aptitude: --- libapache2-mod-php5 (> = 5.6.0-1 ~ dotdeb.1 ~) | libapache2-mod-php5filter (> = 5.6.0-1 ~ dotdeb.1 ~) | php5-cgi (> = 5.6.0-1 ~ dotde
muz the ax
2

Debian stable est conçu pour être vraiment, vraiment stable; ainsi, l'utilisation de versions plus récentes de packages n'est généralement pas prise en charge, souvent délicate et / ou une mauvaise idée, et parfois impossible. Cela dit, il existe des moyens de le faire:

  • Consultez backports.debian.org, voyez si le package que vous voulez est là - c'est la façon "prise en charge".
  • Si non disponible, faites un simple backport sid: http://wiki.debian.org/SimpleBackportCreation (utilisez les bibliothèques de développement installées sur votre système pour compiler les sources du paquet à partir des tests Debian ou instables)
  • L'installation de .debs à partir d'un référentiel différent (par exemple wheezy ou ubuntu) est une très mauvaise idée.

Si aucun backport n'est disponible et qu'un simple backport sid n'est pas possible, vous ne pourrez probablement pas faire fonctionner le package sur votre système. Vous pouvez envisager une mise à niveau vers les tests Debian (ce qui n'est pas si mal lorsque les tests sont gelés, comme Debian Wheezy l'est au moment de la rédaction de cet article).

Cette réponse ne serait pas complète sans répéter les instructions "simple sid backport" données par le bot dpkg sur irc.debian.org:

  1. Ouvrez sources.list et ajoutez une ligne deb-src pour sid (pas une ligne deb!)
  2. activer debian-backports (
  3. exécutez ce qui suit dans le terminal de votre choix:
    • mise à jour d'aptitude;
    • aptitude install build-essential;
    • aptitude build-dep packagename;
    • apt-get -us -uc -b source nom_package
  4. installez les deb résultants.

Voir aussi: http://wiki.debian.org/Backports

DavidMoksha
la source