2010-04-17 1 views
9

J'ai mis en place un virtualenv, qui fonctionne, mais pour une raison quelconque, je dois utiliser sudo pour des commandes aussi simples que mkdir. De toute évidence, j'ai fait quelque chose de mal. Une idée de ce que ça pourrait être?Dans mon virtualenv, j'ai besoin d'utiliser sudo pour toutes les commandes

Merci

+3

Avez-vous utilisé sudo pour créer le virtualenv? – David

+0

S'il vous plaît modifier la question pour décrire exactement comment vous avez créé le virtualenv (quelles commandes et en tant que quel utilisateur). –

+0

@David, on dirait que j'ai dû utiliser 'sudo' pour le créer. Merci – Zach

Répondre

14

Vérifiez les permissions du répertoire et propriétaire et donnent:

$ sudo chown -R me:me virtualenvdir 
$ sudo chmod -R a+rX virtualenvdir 

changement me avec votre nom d'utilisateur, généralement $ USER et virtualenvdir avec le répertoire de travail de votre virtualenv.

+0

Merci ..... Je me suis dit que la réponse de ~ unutbu .... Je vais vous passer à la bonne réponse, car je pense que c'était une meilleure solution que de recréer – Zach

+1

Rappelez-vous les enfants, chaque fois que vous devez utiliser sudo pour faire quelque chose, c'est un problème de permissions! – jathanism

5

Les commandes

cd test 
sudo virtualenv python 

crée un répertoire appelé python qui appartient à la racine.

drwxr-xr-x 5 root root  4096 2010-04-17 11:40 python 

Cela vous oblige à utiliser sudo pour des choses simples comme faire un répertoire dans le répertoire python.

Le correctif serait de supprimer le répertoire python (sauvegarde des données d'abord si nécessaire) et lancez la commande

virtualenv python 

sans sudo.

+1

J'ai changé la propriété de ces fichiers au lieu de recréer. J'avais déjà essayé ça mais je ne connaissais pas le drapeau '-R' pour' chown'. Merci pour votre aide – Zach

Questions connexes