创建虚拟环境时的错误信息

5 投票
3 回答
4631 浏览
提问于 2025-04-16 12:46

文档中提到:

  1. “最好把Pyramid安装在一个‘虚拟’的Python环境中,这样可以避免和你系统中已经安装的Python包发生冲突。”
  2. 要安装一个虚拟Python环境,我需要先安装setuptools,这个步骤成功了。
  3. 创建虚拟Python环境时,我需要运行“virtualenv --no-site-packages env”。
  4. 运行这个命令后,系统提示“如果你在UNIX系统上,请不要使用sudo来运行virtualenv脚本。”

在第三步时,我运行了这个命令,结果提示权限被拒绝,于是我用了sudo。我不确定使用sudo会不会造成问题,因为我不太清楚Linux是不是一种Unix系统。

那么,在看到这个提示后,如何创建一个虚拟的Python环境呢?

Traceback (most recent call last):
  File "/usr/local/bin/virtualenv", line 9, in <module>
    load_entry_point('virtualenv==1.5.1', 'console_scripts', 'virtualenv')()
  File "/usr/local/lib/python2.6/dist-packages/virtualenv-1.5.1-py2.6.egg/virtualenv.py", line 558, in main
    prompt=options.prompt)
  File "/usr/local/lib/python2.6/dist-packages/virtualenv-1.5.1-py2.6.egg/virtualenv.py", line 647, in create_environment
    site_packages=site_packages, clear=clear))
  File "/usr/local/lib/python2.6/dist-packages/virtualenv-1.5.1-py2.6.egg/virtualenv.py", line 931, in install_python
    stdout=subprocess.PIPE)
  File "/usr/lib/python2.6/subprocess.py", line 623, in __init__
    errread, errwrite)
  File "/usr/lib/python2.6/subprocess.py", line 1141, in _execute_child
    raise child_exception
OSError: [Errno 13] Permission denied

3 个回答

-4

在安装了setuptools并运行了“virtualenv --no-site-package”之后,其实你并没有真正安装virtualenv。

所以首先你得安装virtualenv(这个操作需要管理员权限):

$ easy_install virtualenv

然后只需要执行:

$ virtualenv --no-site-package myVirtualEnv
    New python executable in myVirtualEnv/bin/python
    Installing setuptools............done.

另外,Linux是一个类Unix系统(这也回答了你问的“Linux是不是一种Unix”)。你可以在这里了解更多关于类Unix系统的信息 - 维基百科-类Unix

0

正如有人已经提到的,你需要在没有 sudo 的情况下启动 virtualenv

这是我成功的做法。

2

确保你在一个可以创建文件和文件夹的目录里,比如:

cd # Go to your home directory
virtualenv --no-site-packages env # Create virtualenv

撰写回答