Jeśli zainstalowano pymongo za pomocą następującego polecenia:
sudo pip install pymongo or
sudo -E pip install pymongo
I nadal otrzymujesz błędzie import następnie spróbuj uruchomić skrypt Pythona z sudo jak:
sudo python example.py
Jeśli jesteś w stanie uruchomić skrypt w ten sposób, ale nie bez sudo. Następnie może wystąpić problem z PYTHON_PATH lub problemem uprawnień.
Rozwiązywanie problemu nr 1 (tj. PYTHON_PATH): Miejsce, w którym pip instaluje pakiety i lokalizacje, w których python szuka pakietów, nie są zgodne.
Jak zatem znaleźć pakiety instalacyjne pip? Uruchom następujące polecenia:
sudo pip show pymongo
To pokazuje wyjście tak:
---
Name: pymongo
Version: 3.4.0
Location: /usr/local/lib/python2.7/dist-packages
Teraz wiesz gdzie pip zainstalować pakiety. Dodaj następującą linię w pliku .bashrc:
export PYTHONPATH=$PYTHONPATH:/usr/local/lib/python2.7/dist-packages/
Wykonaj następujące polecenie, aby wykonać.bashrc ponownie:
source .bashrc
Teraz spróbuj uruchomić skrypt Pythona bez sudo. Powinien działać.
Jeśli nie, to należy wykonać następujące czynności:
emisyjnej Rozwiązywanie # 2 (tj uprawnienia): Zezwalaj użytkownikom innym niż root do odczytu i wykonywania pacakages Pythonie.
sudo chmod -R ugo+rX /usr/local/lib/python2.7/
To powinno rozwiązać wszystkie Twoje problemy. Powinieneś być w stanie uruchomić skrypt Pythona bez sudo.
już zainstalowanych pymongo. ale wciąż mający ten błąd. dowolny pomysł? –
@ ji-ruh właściwie nie mam pojęcia. Przepraszam, –
to działa dla mnie. http://stackoverflow.com/a/16004833/3797286 –