Reputation: 185
So I'm trying to use Paramiko on Ubuntu with Python 2.7, but import paramiko causes this error:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named paramiko
The other questions on this site don't help me since I'm new to Ubuntu.
Here are some important commands that I ran to check stuff:
sudo pip install paramiko
pip install paramiko
sudo apt-get install python-paramiko
Paramiko did "install". These are the only commands I used to "install" paramiko. I'm new to Ubuntu, so if I need to run more commands, lay them on me.
which python
/usr/local/bin/python
python -c "from pprint import pprint; import sys; pprint(sys.path);"
['',
'/usr/local/lib/python27.zip',
'/usr/local/lib/python2.7',
'/usr/local/lib/python2.7/plat-linux2',
'/usr/local/lib/python2.7/lib-tk',
'/usr/local/lib/python2.7/lib-old',
'/usr/local/lib/python2.7/lib-dynload',
'/usr/local/lib/python2.7/site-packages']
In the python interpreter, I ran help("modules")
and Paramiko is not in the list.
two paramiko folders are located in usr/local/lib/python2.7/dist-packages
.
Upvotes: 5
Views: 62130
Reputation: 2140
If you're using Python 3, type the below command
$ sudo -H pip3 install paramiko --ignore-installed
Upvotes: 0
Reputation: 101
Also, mind the version of python, if the error was reported by python3, then install python3's paramiko.
Upvotes: 0
Reputation:
Try installing only through commands.
git clone https://github.com/paramiko/paramiko.git
export PYTHONPATH=$PYTHONPATH:<path_to_paramiko>
sudo apt-get install libffi6 libffi-dev
and If you haven't properly installed the header files and static libraries for python dev then run this command: sudo apt-get install python-dev
Enjoy :)
Upvotes: 0
Reputation: 1
try type pi then tap, this give you this
:$ pi
pic piconv pidstat pinentry-curses ping6
pip3 pivot_root
pic2graph pidof pinentry ping pinky
pip3.6
then you type in whereis pip3
$ whereis pip3
pip3: /usr/local/bin/pip3.6 /usr/local/bin/pip3
xg@xx-ppmaster:/xg/scripts/pyth
$ sudo /usr/local/bin/pip3 install paramiko
This should let you install paramiko
more on python installation
https://danieleriksson.net/2017/02/08/how-to-install-latest-python-on-centos/
Upvotes: -1
Reputation: 3822
There are two others methodes for add modules in python :
The first :
The second :
import sys
sys.path.insert(0, "path_of_package")
Upvotes: 1
Reputation:
Try downloading the zip file from https://github.com/paramiko/paramiko and running this command in the unzipped directory :
python setup.py install
Upvotes: 4
Reputation: 58352
Short version: You're mixing Ubuntu's packaged version of Python (/usr/bin/python
) and a locally built and installed version (/usr/local/bin/python
).
Long version:
apt-get install python-paramiko
to install Ubuntu's official Paramiko package to /usr/lib/python2.7/dist-packages
.pip
, which installs to /usr/local/lib/python2.7/dist-packages
. (See here.)/usr/local/lib/python2.7
instead of /usr/lib/python2.7
, and because it doesn't have Debian/Ubuntu customizations, it doesn't check use dist-packages
.Solution: You should be able to add /usr/local/lib/python2.7/dist-packages
to your /usr/local/bin/python
's sys.path
, but since you're using Ubuntu, it's easiest to let Ubuntu do the work for you:
apt-get
instead of pip
).I'd go so far as to uninstall the local version of Python and delete /usr/local/lib/python2.7
, to ensure that no further mismatches occur. If you don't want to be that drastic, then you can edit your $PATH to put /usr/bin
before /usr/local/bin
to run the system version of Python by default.
Upvotes: 12