2015-03-27 1 views
5

reçu une erreur après l'installation et d'essayer d'exécuter s3cmd 1.0.0s3cmd ImportError: Aucun module nommé S3.Exceptions

s3cmd -h 

Problem: ImportError: No module named S3.Exceptions 
S3cmd: unknown version. Module import problem? 

Traceback (most recent call last): 
    File "/usr/bin/s3cmd", line 1995, in <module> 
    from S3.Exceptions import * 
ImportError: No module named S3.Exceptions 

Your sys.path contains these entries: 

Cette erreur est survenue après la mise à niveau à la dernière Amazon Linux distro 2015.03.0

Répondre

18

on dirait que l'erreur est survenue parce que python2.7 est maintenant la version python par défaut dans l'Amazonie Linux 2015.03.0+ Si vous changez python retour à 2,6 et exécutez s3cmd cela devrait fonctionner sans problème

update-alternatives --set python /usr/bin/python2.6 
s3cmd -h 

Une fois la commande s3cmd est couru, vous pouvez mettre python revenir à 2.7 pour yum et d'autres services publics:

update-alternatives --set python /usr/bin/python2.7 
yum install <package> 
9
vi /usr/bin/s3cmd 

ajouter 2,6 à la première ligne, il ressemble à:

#!/usr/bin/python2.6 

Enregistrer le fichier et s3cmd fonctionnera. aussi longtemps que vous avez /usr/bin/python2.6 sur votre système

+0

beaucoup mieux répondre –

8

je fait face à une erreur semblable avec s3cmd, mais le nom du module était différent: ImportError: No module named S3.ExitCodes

Dans mon cas, je pourrais résoudre le problème de cette façon : yum install python-pip puis pip install s3cmd. Après que s3cmd a bien fonctionné.

0

Aucune des réponses précédentes ont travaillé pour moi, mais la copie quelques lignes de la sourcegraph aws-cli dockerfile fait:

DE python: 2
RUN apt-get update -q
RUN apt-get install python -qy -pip groff-base
RUN pip installer awscli