Serveur Ubuntu dans VirtualBox. J'essaie d'installer VirtualEnv pour commencer à apprendre Flask and bottle. Quelques détails de ma configuration.
vks@UbSrVb:~$ 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"
vks@UbSrVb:~$ python --version
Python 2.7.3
vks@UbSrVb:~$ echo $VIRTUALENVWRAPPER_PYTHON
/usr/bin/python
vks@UbSrVb:~$ echo $VIRTUALENV_PYTHON
vks@UbSrVb:~$
Lorsque je démarre ma machine virtuelle, le message d'erreur suivant s'affiche sur ma console
/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.
Quand j'essaye d'initialiser un virtualenv, j'obtiens les erreurs suivantes
vks@UbSrVb:~/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
vks@UbSrVb:~/dropbox/venv$ ls
try1
vks@UbSrVb:~/dropbox/venv$ ls try1/
bin include lib
vks@UbSrVb:~/dropbox/venv$
Mes entrées .bashrc
export WORKON_HOME='~/dropbox/venv/'
source '/usr/local/bin/virtualenvwrapper.sh'
Q1 - Conformément à l'erreur au démarrage, comment puis-je m'assurer que virtualenv est installé pour VIRTUALENVWRAPPER_PYTHON =/usr/bin/python et que PATH est défini correctement?
Q2 - Même avec Sudo, je reçois le même message d'erreur "Système de fichiers en lecture seule"?
J'ai essayé d'installer virtualenv en utilisant pip puis apt-get, juste pour frapper et essayer.
Vous essayez d'installer un virtualenv sur un point de montage qui ne supporte pas liens symboliques . Si vous regardez le résultat de mount
, vous verrez un point de montage à /home/yourusername/dropbox
. Essayez un autre emplacement, tel que votre répertoire personnel:
cd
virtualenv --python=python2.7 flaskenv
(note: actuellement flask ne fonctionne que sur python 2)
De toute façon, il est inutile de synchroniser le vritualenv sur la boîte de dépôt. Cela ne fonctionnera sur un autre système que s'il est identique. Vous pouvez synchroniser virtualenvs à l’aide de pip fichiers exigences.txt .