web-dev-qa-db-ja.com

SCLを永続的に有効にする

SCLを永続的に有効にする方法はありますか?

rh-php56をインストールしました。マシンにsshを実行するたびにロードされることを確認したいと思います。

私は現在CentOS 7を実行しています。

8
Odyss3us

シェルプロファイルに行を追加して(例:〜/ .bash_profile)、選択したsclを有効にできると思います。例えば、

scl enable rh-nginx18 bash

プロファイルまたはログアウト/ログインをリロードすると、SCLにアクセスできるはずです。

1
Michael Skelton

scl enableを使用すると、現在のシェル内に新しいシェルが実際に開きます。これは、特にログインスクリプトから実行した場合は、かなり不明瞭です。

代わりに、~/.bash_profileに配置する必要があります。

source /opt/rh/rh-nginx18/enable

または:

source scl_source enable rh-nginx18

後者は、実際のインストールパスから独立しているため、より「エレガント」です。

これはcurrentシェルに環境をロードする効果があります。

24
l3g3nd4ryf0x

Redhatは/etc/profile.d にファイルを配置することを提案しています。つまり、Pythonの場合:

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

これはcentosの下のdevtoolsで機能するので、これを試すことができます。

14
ted