2013-05-27 101 views
0

VirtualBox中的Ubuntu服务器。我正在尝试安装VirtualEnv以开始学习烧瓶和烧瓶。 我的设置的一些细节。Ubuntu中的Virtualenv和VirtualenvWrapper的安装问题13.04

[email protected]:~$ cat /etc/os-release 
NAME="Ubuntu" 
VERSION="12.04.2 LTS, Precise Pangolin" 
ID=ubuntu 
ID_LIKE=debian 
PRETTY_NAME="Ubuntu precise (12.04.2 LTS)" 
VERSION_ID="12.04" 

[email protected]:~$ python --version 
Python 2.7.3 
[email protected]:~$ echo $VIRTUALENVWRAPPER_PYTHON 
/usr/bin/python 
[email protected]:~$ echo $VIRTUALENV_PYTHON 

[email protected]:~$ 

当我启动我的虚拟机,我收到以下错误我的控制台

/usr/bin/python: No module named virtualenvwrapper 
virtualenvwrapper.sh: There was a problem running the initialization hooks. 

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

,当我尝试初始化的virtualenv我收到以下错误

[email protected]:~/dropbox/venv$ virtualenv try1 
New python executable in try1/bin/python3.2 
Also creating executable in try1/bin/python 
Traceback (most recent call last): 
    File "/usr/local/bin/virtualenv", line 9, in <module> 
    load_entry_point('virtualenv==1.9.1', 'console_scripts', 'virtualenv')() 
    File "/usr/local/lib/python3.2/dist-packages/virtualenv.py", line 979, in main 
    no_pip=options.no_pip) 
    File "/usr/local/lib/python3.2/dist-packages/virtualenv.py", line 1081, in create_environment 
    site_packages=site_packages, clear=clear)) 
    File "/usr/local/lib/python3.2/dist-packages/virtualenv.py", line 1499, in install_python 
    os.symlink(py_executable_base, full_pth) 
OSError: [Errno 30] Read-only file system 


[email protected]:~/dropbox/venv$ ls 
try1 
[email protected]:~/dropbox/venv$ ls try1/ 
bin include lib 
[email protected]:~/dropbox/venv$ 

我。 bashrc条目

export WORKON_HOME='~/dropbox/venv/' 
source '/usr/local/bin/virtualenvwrapper.sh' 

Q1 - 按照启动时的错误,我如何确保为VIRTUALENVWRAPPER_PYTHON =/usr/bin/python安装了virtualenv,并且该PATH是否正确设置了 ?
Q2 - 即使使用sudo,我也会得到相同的“只读文件系统”错误?

我已经尝试使用pip安装virtualenv然后apt-get,只是为了打击和尝试。

+0

您的磁盘已满? –

+0

不,它没有满。 /dev/sda1 7.4G 2.3G 4.8G 33%/ –

+0

你是如何安装virtualenvwrapper的? –

回答

0

尝试将您的WORKON_HOME全局设置为另一个路径(〜/ .virtualenvs)例如,看看是否有效,也许问题在于该共享目录,您使用的是Windows吗?如果是,尝试安装NTFS-3G,看到我的轮廓配置文件https://askubuntu.com/questions/70281/why-does-my-ntfs-partition-mount-as-read-only

我也喜欢来检测第一,如果安装virtualenvwrapper:

if which virtualenvwrapper.sh &> /dev/null; then 
    WORKON_HOME=$HOME/.virtualenvs 
    # path to virtualenvwrapper, in my case 
    source /usr/local/share/python/virtualenvwrapper.sh 
fi 
+0

ntfs已经安装到最新版本。 –

+1

你尝试将WORKON_HOME设置为另一个路径吗?只是放弃,如果它是一个问题,只是在Dropbox文件夹或全球 –

0

我有问题,在我的pip是为不同Python的版本比我想使用的版本更高。

$ python -V 
Python 2.7.5+ 
$ pip -V 
pip 1.5.4 from /usr/local/lib/python3.3/dist-packages (python 3.3) 

所以,当我用pip安装virtualenvvirtualenvwrapper,新的Python包放入python3.3的DIST-包,所以当然我python2.7无法找到他们!

为了解决这个问题,我不得不使用适当版本的点子,在我的情况下它是pip2

$ pip2 -V 
pip 1.5.4 from /usr/local/lib/python2.7/dist-packages (python 2.7) 

因此,请确保您使用的是相应版本的pip