Yum ne réinstallera pas PHP sur Amazon Linux

En fin de count, cette question concerne Yum et l'AMI Amazon Linux (voir la fin de cette partie), mais je vais d'abord donner un aperçu de la façon dont je suis entré dans ma situation.

J'ai installé PHP à partir de la source

Je travaille sur la mise en place d'une nouvelle application PHP sur un server Web hébergé avec Amazon Web Services. L'instance EC2 exécute "Amazon Linux AMI version 2012.09" (selon / etc / issue). Je ne suis pas l'administrateur principal de ce server, donc je souhaite limiter l'impact des modifications que je fais.

Il existe déjà certaines applications PHP s'exécutant sur ce server. J'ai besoin d'une version plus récente de PHP qu'ils utilisent. Ils utilisent la version du package distro 5.3, trop ancien pour mes besoins.

J'ai pensé que je downloadais la source PHP, la construisais moi-même et je l'exécuterais à côté de l'autre version. (Comment je vais configurer cela est une question différente que je ne vais pas entrer ici.)

J'ai configuré ma création PHP avec ces options:

--prefix=/opt/php-5.5.9 --with-openssl --with-mcrypt --with-mysql --with-pdo-mysql --enable-fpm --with-apxs2=/usr/sbin/apxs 

Ensuite, j'ai changé en root et j'ai make install . (En rétrospection, ce faisant, en tant que root, c'était une erreur, j'aurais dû configurer les permissions d'écriture user sur le directory d'installation et installé comme mon user afin que je puisse être sûr qu'aucun des files ne se trouvait à l'extérieur du directory d'installation. Trop tard pour cela maintenant .)

J'ai alors remarqué que le server Web ne répondait pas. Après le redémarrer, cela a bien fonctionné. J'ai piqué un peu et j'ai remarqué que pour la phpversion , le server relève maintenant la nouvelle version que je viens d'installer sous /opt , et non la version distro que j'avais l'intention de laisser en place. Il s'avère que l' make install s'est déroulée et remplacé la libphp5.so existante. Rapports RPM:

 [root@xxxx etc]# rpm -V php S.5....T. /usr/lib64/httpd/modules/libphp5.so 

Tout fonctionne toujours très bien sur la nouvelle version pour autant que je le sache, donc très probablement aucun mal a été fait. Cependant, je préfère laisser l'ancienne version de PHP en place afin que les packages puissent encore être gérés par le gestionnaire de packageages. C'était mon intention de mettre la nouvelle version dans /opt .

En essayant de remettre l'ancienne version, Yum a échoué

J'ai essayé de restaurer l'ancienne version de libphp5.so avec yum reinstall libphp5.so . Voici la sortie:

 [root@xxxx etc]# yum reinstall php Loaded plugins: fastestmirror, local, priorities, security, update-motd, upgrade-helper Setting up Reinstall Process Loading mirror speeds from cached hostfile * amzn-main: packages.us-east-1.amazonaws.com * amzn-updates: packages.us-east-1.amazonaws.com amzn-main | 2.1 kB 00:00 amzn-updates | 2.3 kB 00:00 265 packages excluded due to repository priority protections Installed package php-5.3.20-1.29.amzn1.x86_64 (from amzn-updates) not available. Nothing to do 

À partir de ce message, je ne suis pas clair quel est le problème. Est-ce qu'il ne trouve pas le package sur le server de mise à jour? Le server n'est-il pas disponible (espérons-le temporairement)? Ou exclut-il le package en raison de protections prioritaires et refuse-t-il de le réinstaller?

Quelle est la meilleure résolution pour ce problème qui me permet de restaurer l'ancienne version de PHP et de la remettre sous contrôle du gestionnaire de package?

One Solution collect form web for “Yum ne réinstallera pas PHP sur Amazon Linux”

Amazon a remplacé le package PHP 5.3.20 par une version plus récente (pour les corrections de security, etc.). Il suffit de le mettre à jour à la place:

 yum update php 

Et pour l'amour de Pete, ne faites pas ces choses en production! Commencez une nouvelle instance et faites votre expérimentation là-bas.

  • Pourquoi obtenez-vous différentes versions openssl?
  • Amazon EC2 Linux AMI: Quelle est la troisième colonne de la list yum installée?
  • Est-ce que "yum groupinstall" est compatible avec Red Hat Network?
  • Comment installer la dernière version g ++ sur CentOS
  • SUDO YUM non trouvé
  • L'installation de gearmand échoue sur la dépendance libevent
  • Pourquoi certaines caisses CentOS 5 sont-elles encore vulnérables à ShellShock après la mise à niveau de Bash?
  • Commande Yum pour réduire les packageages
  • installez les derniers nodejs (4.2.1 ou 5.0) sur centos 7 using yum
  • Est-il acceptable d'éliminer kernel-debug * sur un système de production s'il empêche les mises à niveau? Modèle KVM: / boot n'a pas assez d'espace
  • Essayer d'installer php-devel sur le server AWS EC2 pour comstackr une extension PHP, mais avoir des erreurs "httpd24 est en conflit avec httpd-2.2.27-1.3.amzn1.x86_64"
  • Les astuces du serveur de linux et windows, tels que ubuntu, centos, apache, nginx, debian et des sujets de rĂ©seau.