2010-04-17 14 views
9

Ich habe eine virtualenv eingerichtet, die funktioniert, aber aus irgendeinem Grund muss ich sudo für Befehle so einfach wie mkdir verwenden. Offensichtlich habe ich etwas falsch gemacht. Irgendeine Idee, was es sein könnte?In meinem virtualenv, muss ich sudo für alle Befehle verwenden

Dank

+3

Haben Sie sudo verwendet, um den virtualenv zu erstellen? – David

+0

Bitte bearbeiten Sie die Frage, um genau zu beschreiben, wie Sie den virtualenv erstellt haben (welcher Befehl und welcher Benutzer). –

+0

@David, sieht aus, als hätte ich 'sudo' benutzt, um es zu erstellen. Danke – Zach

Antwort

14

Überprüfen Sie die Verzeichnisberechtigungen und Eigentümer und geben:

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

Änderung me mit Ihrem Benutzernamen, $ typischerweise USER und virtualenvdir mit Ihrem virtualenv Arbeit Verzeichnis.

+0

Danke ..... Ich dachte, dass aus ~ unutbu Antwort .... Ich werde Sie zur richtigen Antwort obwohl ich denke, das war eine bessere Lösung als die Wiederherstellung – Zach

+1

Remember Kinder, Wann immer Sie Sudo verwenden müssen, um etwas zu tun, ist es ein Problem mit Berechtigungen! – jathanism

5

Die Befehle

cd test 
sudo virtualenv python 

erstellt ein Verzeichnis python genannt, die dem Benutzer root gehört.

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

Dass Sie zwingen würde sudo für einfache Dinge zu verwenden, wie ein Verzeichnis innerhalb des python Verzeichnis zu machen.

Das Update wäre das python Verzeichnis (Speichern von Daten zuerst, falls erforderlich) zu löschen und geben Sie den Befehl

virtualenv python 

ohne sudo.

+1

Ich änderte den Besitz dieser Dateien, anstatt neu zu erstellen. Ich hatte das schon mal ausprobiert, aber ich wusste nichts von der '-R' Flagge für' chown'. Vielen Dank für Ihre Hilfe – Zach

Verwandte Themen