我尝试过的

我尝试过的

当使用 ssh 密钥登录我的 VPS 时,我得到以下信息:

Command '' not found, but can be installed with:

sudo apt install libpam-mount      
...           
sudo apt install nmh               

virtualenvwrapper.sh: There was a problem running the initialization hooks.

If Python could not import the module virtualenvwrapper.hook_loader,
check that virtualenvwrapper has been installed for
VIRTUALENVWRAPPER_PYTHON= and that PATH is
set properly.

这是我的.bashrc变量:

export WORKON_HOME=~/Env
source /usr/local/bin/virtualenvwrapper.sh
export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3

我尝试过的

  • 采购.bashrc~/.profile并且/usr/local/bin/virtualenvwrapper.sh(无错误)
  • 升级virtualenvwrapperpip3 --upgrade最新)

另外,我的 virtualenv 工作得很好。

答案1

第 47-51 行virtualenvwrapper.sh脚本中,它首先检查是否VIRTUALENVWRAPPER_PYTHON设置了环境变量,如果没有,则将其设置为50号线:

VIRTUALENVWRAPPER_PYTHON="$(command \which python)"

问题是较新版本的 Ubuntu (18.04+) 不再安装二进制文件python,仅安装python3.更改pythonpython350号线脚本的内容就完成了;)

否则,在 中.bashrc,您需要第一的设置VIRTUALENVWRAPPER_PYTHON然后是source脚本:

VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
source /usr/local/bin/virtualenvwrapper.sh

答案2

简而言之,virtualenvwrapper.sh是 Python 包的一部分。

我在新安装的 Ubuntu 18.04 上遇到了这个问题。我检查了一台旧机器上的日志,发现以下内容:

sudo -H pip3 install virtualenvwrapper
sudo -H pip  install virtualenvwrapper

当我在新机器上运行它们时,错误消息消失了。

答案3

我最终通过重新安排导出来解决这个问题:

export WORKON_HOME=~/Env
source /usr/local/bin/virtualenvwrapper.sh
export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3

相关内容