协议错误通过ubuntu上的vagrant设置虚拟环境

时间:2014-07-08 20:04:46

标签: python ubuntu virtualenv vagrant

我正在尝试在Ubuntu 12.04上使用Python 2.7使用流浪汉设置一个virtualenv但是有相同的问题。似乎只有当从窗口发出“vagrant up”时才能看到这个问题。解决办法是什么?任何指针?

New python executable in .vagrant-env/bin/python
  Traceback (most recent call last):
  File "/usr/local/bin/virtualenv", line 9, in <module>
    load_entry_point('virtualenv==1.11.6', 'console_scripts', 'virtualenv')()
  File "/usr/local/lib/python2.7/dist-packages/virtualenv.py", line 824, in main
    symlink=options.symlink)
  File "/usr/local/lib/python2.7/dist-packages/virtualenv.py", line 984, in   create_environment
    site_packages=site_packages, clear=clear, symlink=symlink))
  File "/usr/local/lib/python2.7/dist-packages/virtualenv.py", line 1404, in install_python
    os.symlink(py_executable_base, full_pth)
   OSError: [Errno 71] Protocol error

6 个答案:

答案 0 :(得分:30)

解决方案是使用--always-copy。有关血腥的详细信息,请参阅here

答案 1 :(得分:16)

如果在/ vagrant / shared文件夹外创建虚拟环境,则可以修复此错误...

如果转到你的流浪者用户的主文件夹,你可以在那里创建virtualenv而不会出现这个问题!

只有venv必须离开这个/ vagrant /目录...之后你可以去工作,因为通常激活这个venv并使用你的常规/ vagrat / shared目录中的你的代码...

答案 2 :(得分:15)

我发现了问题并修复了它。只需以管理员身份启动git bash / cmd提示控制台即可。然后,流浪汉&gt;设置你的虚拟环境。这应该是一个蛋糕步行。

由于 Venkat

答案 3 :(得分:1)

使用此

virtualenv --python= <#Python path for specific version#> <#Folder name#> --always-copy

示例:

virtualenv --python=/usr/local/bin/python3.7 venv --always-copy

答案 4 :(得分:0)

我遇到过类似的问题。只需重新启动流浪盒即可解决它。

答案 5 :(得分:-2)

这对我有用:

sudo virtualenv venv