101 votes

Autorisation refusée lors de l'activation de venv

Je viens de démarrer un nouveau projet python et de créer un répertoire dans le dossier du projet en exécutant virtualenv venv dans le terminal. Cependant, lorsque j'exécute venv/bin/activate j'obtiens une erreur d'autorisation refusée.

j'ai essayé

 sudo chown -R user:user project/venv
 

mais je reçois

 chown: user: illegal group name
 

J'ai organisé ces événements une tonne de fois et je n'ai jamais eu le problème. Y a-t-il autre chose que je puisse essayer?

Je suis sur un Mac.

270voto

David Cullen Points 5279

Vous devez exécuter

. venv/bin/activate

ou

source venv/bin/activate

L' activate le fichier est délibérément pas exécutable, car il doit être d'origine.

Il doit être d'origine parce qu'il a besoin de faire des changements à l'environnement. Si elle est exécutée comme un script, il ne fera qu'apporter des modifications à l'environnement de l'enfant, le processus utilisé pour exécuter le script.

Quelqu'un dans les commentaires, interrogé sur l' . commande. À partir de la page de manuel de bash:

    .  filename [arguments]
   source filename [arguments]
          Read  and execute commands from filename in the current shell
          environment and return the exit status of the last command
          executed from filename.

En bref, . est un environnement intégré qui signifie la même chose que l' source intégré.

-1voto

Usman Rana Points 22

Cela fonctionne pour moi sur Mac.

 source ./bin/activate
 

-4voto

neiodavince Points 9

Fondamentalement, il recherche l'autorisation d'exécuter l'activation sur le chemin du dossier créé.

Sur la racine, donnez ci-dessous la commande des autorisations sur le chemin souhaité où l'activation est située

 sudo chmod -R 755 ~/tensorflow/* # or whatever the target structure 
 

Cela étendra toutes les autorisations, y compris lecture / écriture / exécution et groupe.

puis exécutez ~/bin/activate

-5voto

Julian Points 45

A partir de la racine de la ligne de commande, entrez:

 source /home/<your_username>/<app_folder>/<venv_name>/bin/activate
 

A travaillé pour moi

-6voto

allez pour activer le fichier clic droit et ouvrir les propriétés -> autorisations

et vérifiez Execute

ouvrir cette image:

entrez la description de l'image ici

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X