web-dev-qa-db-ja.com

RHELsclを永続的に有効にする

RedHatのカスタムソフトウェアコレクションを永続的に有効にする方法はありますか?

RHEL6でpython27を提供するためにsclをインストールしましたが、毎回カスタムsclを有効にする必要はありません。

19
paweloque

起動スクリプトに何かを追加して、有効化スクリプトを入手することができます。

たとえば、.bash_profileに追加します(最初のdot/の間のスペースに注意してください)

. /opt/rh/python27/enable
25
Robert Cohen

このオプションは、ルートにとって危険に聞こえます。次のようなものがより安全で適切だと思います。

コマンドラインオプションを使用する関数を作成できます。これをステロイドの別名と考えてください。以下を.bashrcに追加します

python27() {
scl enable python27 “python $*”
}

次に、テストします。

python27 –version
Python 2.7.5

これはスクリプトの魔法の行には役立ちませんが、スクリプトの呼び出しが簡単になります。

[[email protected] ~]$ cat script.py
#!/usr/bin/env python27

import sys

print “Hello, World!”, sys.version

これを通常と呼び、注意してください。デフォルトのインストールpythonが使用されます:

[[email protected] ~]$ ./script.py
Hello, World! 2.6.6 (r266:84292, Sep 4 2013, 07:46:00)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-3)]

エイリアスを使用して呼び出し、Python 2.7が使用されていることに注意してください:

[[email protected] ~]$ python27 script.py
Hello, World! 2.7.5 (default, May 23 2013, 06:08:09)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-3)]
5
fatherlinux