我有一个奇怪的。在同一台 Solaris 10 服务器上执行相同 python 二进制文件的不同用户会获得具有不同模块的不同版本。
这一切都开始了,因为脚本以 root 身份运行良好(找到 pexpect 模块),但作为任何其他用户失败(找不到 pexpect 模块)。
像我一样运行 python 我得到 python 2.6.4
Sandman HDS1234567 $ python -V
Python 2.6.4
Sandman HDS1234567 $ which python
/opt/csw/bin/python
如果我 sudo 到 root,我会得到 python 2.6.8
Sandman HDS1234567 $ sudo -s
Password:
bash-3.2# which python
/opt/csw/bin/python
bash-3.2# python -V
Python 2.6.8
bash-3.2#
即使使用完整路径显式调用 python 也会显示相同的奇怪行为。
Sandman HDS1234567 $ whoami ; /opt/csw/bin/python -V
mperino
Python 2.6.4
Sandman HDS1234567 $ sudo -s
Password:
bash-3.2# whoami ; /opt/csw/bin/python -V
root
Python 2.6.8
同一个二进制文件怎么会有两个不同的版本???