29 votes

Activation permanente d'un SCL

Existe-t-il un moyen d'activer de façon permanente un SCL ?

J'ai installé rh-php56 et je voudrais m'assurer qu'il est chargé à chaque fois que je me connecte à ma machine.

Je fonctionne actuellement sous CentOS 7.

60voto

ThantiK Points 548

En utilisant scl enable ouvre en fait un nouveau Shell à l'intérieur de votre shell actuel, ce qui n'est pas très propre, surtout si c'est fait à partir d'un Shell de connexion.

Vous devez plutôt placer, dans votre ~/.bash_profile :

source /opt/rh/rh-nginx18/enable

または

source scl_source enable rh-nginx18

Cette dernière est plus "élégante" car elle est indépendante du chemin d'installation proprement dit.

Cela a pour effet de charger l'environnement dans votre actuel Shell.

0 votes

Cela fonctionne également sur amazon linux Linux ip-10-1-129-214 4.14.238-125.422.amzn1.x86_64 #1 SMP Tue Jul 20 20:51:46 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux

27voto

crocket Points 143

Redhat propose de placer un fichier dans /etc/profile.d c'est-à-dire pour Python :

$ cat /etc/profile.d/enablepython33.sh
#!/bin/bash
source scl_source enable python33

Comme cela fonctionne pour les devtools sous centos, vous pouvez essayer ceci.

3 votes

Voici ce que je fais. J'ai créé un /etc/profile.d/scl_enable.sh avec tous mes fichiers scl dans ce seul fichier.

-3voto

Michael Skelton Points 37

Je pense que vous pourriez ajouter une ligne dans votre profil Shell (par exemple ~/.bash_profile) pour activer le scl de votre choix. Par exemple,

scl enable rh-nginx18 bash

EDIT : marqué comme spoiler car c'est dangereux

Rechargez votre profil ou déconnectez-vous/connectez-vous, et vous devriez avoir accès à vos SCL.

8 votes

Le problème est que votre bash résultant n'est plus un login Shell. Et vous ne pouvez pas faire il s'agit d'un login Shell. Si vous essayez, vous ferez exploser votre système. Cela peut fonctionner dans certaines circonstances, mais ce n'est pas la méthode recommandée.

4 votes

ATTENTION ! L'ajout d'une commande scl comme celle décrite ci-dessus m'a permis d'obtenir un login "gelé" parce que le script s'est bloqué pour une raison ou pour une autre. Conservez cette page comme référence pratique en cas de blocage : serverfault.com/questions/94503/

1 votes

La réponse acceptée est DANGEREUSE et devrait être rétrogradée ou supprimée. J'ajoute ceci pour que les gens le remarquent avant de se faire des forkbombes :)

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X