web-dev-qa-db-fra.com

Meilleure façon de faire rhscl PHP disponible globalement

J'ai installé RHSCL 2 en utilisant l'URL suivante:

https://access.redhat.com/documentation/en-us/red_hat_software_collections/2/html/2.0_release_notes/chap-installation.html

en utilisant le gestionnaire d'abonnement Redhat.

J'ai ensuite couru yum remove php* suivie par yum install rh-php56

Tout s'est bien passé sauf maintenant PHP pas trouvé nulle part. J'ai ensuite couru find / -name php et trouvé rh-php56 Dans les annuaires suivants:

/var/opt/rh/rh-php56/lib/php
/opt/rh/rh-php56/register.content/var/opt/rh/rh-php56/lib/php
/opt/rh/rh-php56/root/usr/bin/php
/opt/rh/rh-php56/root/usr/lib64/php
/opt/rh/rh-php56/root/usr/share/php

Quelle est la meilleure façon d'obtenir ces fichiers binaires dans /usr/bin ou tout autre répertoire qui est généralement disponible dans le monde disponible pour tous les utilisateurs?

Ai-je manqué une étape lors de l'installation des packages, c'est pourquoi il n'est pas disponible à l'échelle mondiale? Ou est-ce juste ce qui se passe lorsque vous utilisez des RHSCL?

J'ai testé les fichiers binaires dans ces dossiers et ils fonctionnent quand je courais php -v donc ça marche bien.

Ma première pensée est de simplement cp dans /bin ou /usr/bin Mais peut-être qu'il y a une façon officielle de faire ce que je demande?

Edit

Ne peut pas commenter, pas de rep ... du chapitre 3 du lien que j'ai posté, il est indiqué que les packages de collecte de logiciels doivent être exécutés comme suit:

scl enable rh-php56 'php -v'

Qui fonctionne ... Cependant, comment puis-je l'obtenir pour courir pour tous les utilisateurs comme $ php -v sans commandes supplémentaires. J'ai besoin que les fichiers binaires PHP sont disponibles dans le monde entier afin que les serveurs Web puissent l'utiliser et les utilisateurs SSH avec des coquilles normales.

10
Ozzy

Le moyen d'importer une collection de logiciels dans votre shell actuel (ne pas lancer une sous-shell) consiste à susciter le fichier "Activer".

Par exemple pour RH-PHP56 sur une machine de Redhat 7 ...

source/opt/RH/RH-PHP56/Activer

Vous pouvez maintenant exécuter "php" ou lire des manchages "Man php" comme normal.

cela ajoutera les variables d'environnement appropriées à l'environnement actuel des coques. Les utilisateurs individuels peuvent le faire dans des fichiers .bstrucc, ce qui lui permet d'être disponible auprès de SSH (coquilles non interactives)

Vous pouvez également copier (ou symlink) le fichier d'activer dans /etc/profile.d/ avec un suffixe ".sh" pour l'activer automatiquement pour tous les utilisateurs.

Par exemple

ln -s/opt/rh/rh-php56/activer /etc/profile.d/rh-php56.sh

Bien sûr, cela si plus que l'environnement est nécessaire (comme des démons?). Ou si plusieurs versions de ce logiciel sont présentes sur un système (pour une compatibilité en arrière avec d'autres logiciels/services), car il peut y avoir une interaction entre versions. Les utilisateurs peuvent également ne pas vouloir la version "la plus récente" ou devenir confusion sur la raison pour laquelle le système "Base" (par exemple, configs) n'effectue pas la version de la collection de logiciels.

Anthony Thyssen (un très ancien administrateur système)

16
anthony