Ich versuche, Software-Sammlungen auf CentOS 6.8 Server zu verwenden, aber es wird die Umgebungsvariable PATH nicht korrekt gesetzt, wenn der übergebene Befehl "bash" ist, aber "tcsh" funktioniert ...'scl enable' nicht PATH mit Bash
Beispiel (jedoch auf dieser Maschine, die wir nicht verwenden tsch):
$ scl --list
devtoolset-4
python27
rh-java-common
rh-perl524
rh-python35
$ which python
/usr/bin/python
$ python --version
Python 2.6.6
$ scl enable python27 bash
$ which python
/usr/bin/python
$ python --version
Python 2.6.6
$ cat /opt/rh/python27/enable
export PATH=/opt/rh/python27/root/usr/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/opt/rh/python27/root/usr/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
export MANPATH=/opt/rh/python27/root/usr/share/man:${MANPATH}
# For systemtap
export XDG_DATA_DIRS=/opt/rh/python27/root/usr/share:${XDG_DATA_DIRS:-/usr/local/share:/usr/share}
# For pkg-config
export PKG_CONFIG_PATH=/opt/rh/python27/root/usr/lib64/pkgconfig${PKG_CONFIG_PATH:+:${PKG_CONFIG_PATH}}
$ echo $PATH
/usr/share/gridengine/bin/lx26-amd64:/usr/lib64/qt-3.3/bin:/usr/NX/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/opt/bin:/opt/maker/bin:/opt/tools/:/opt/tools/amos-3.1.0:/opt/mpich-install/bin:/opt/pssc/bin:/opt/torque/bin:/opt/torque/sbin
$ echo $LD_LIBRARY_PATH
/opt/rh/python27/root/usr/lib64
$ echo $MANPATH
/opt/rh/python27/root/usr/share/man::/opt/mpich-install/share/man:/opt/mpich-install/share/man
warum sind MANPATH
und LD_LIBRARY_PATH
sind richtig eingestellt, aber nicht PATH
? Wenn ich tcsh verwende funktioniert es wie erwartet:
$ scl enable python27 tcsh
$ which python
/opt/rh/python27/root/usr/bin/python
$ python --version
Python 2.7.8
Vielleicht gibt es Änderungen an PATH in Ihrem lokalen '.bashrc' oder globalen'/etc/bashrc', die den Wert überschreiben, anstatt anzuhängen. Es gibt eine Reihe von nicht standardmäßigen Pfaden, die Konfigurationsänderungen vorschlagen. –