业务背景:公司要求从Linux下用python连接SFTP,百度了一下,需要paramiko模块
组件 | 版本 |
---|---|
python | 2.7.5 |
gcc | 4.8.5 |
Linux | centos7 |
安装步骤:
第一步:查找对应的paramiko和python的对应版本,我安装的是2.6.0
如果想要直接用我的下载好的安装包,直接点击下面的链接就可以了,有了这个太方便了,哈哈
https://download.csdn.net/download/qq_38220334/87238346
官网的下载地址:(查询python相关依赖包的地址):
https://pypi.org/
打开后是这样的,然后输入想要查询的依赖包
搜索显示如下;找到对应的版本下载就可以了
第二步:上传到对应的服务器上,解压、编译
相关的命令
解压:
tar -zxvf paramiko-2.6.0.tar.gz
进入到解压后目录的命令:
cd paramiko-2.6.0
安装、编译的命令:以下两个命令都可以,需要看自己配置的python环境
python2.7 setup.py build && python2.7 setup.py install
或者
python setup.py build && python setup.py install
第三步:查看命令执行后的结果
其实根据命令执行后的打印信息就可以看到缺什么包
我实际的安装paramiko报错如下
,然后按照提示,缺什么依赖包就安装对应的依赖包就可以了
>>> import paramiko
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "build/bdist.linux-x86_64/egg/paramiko/__init__.py", line 22, in <module>
File "build/bdist.linux-x86_64/egg/paramiko/transport.py", line 33, in <module>
ImportError: No module named cryptography.hazmat.backends
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "build/bdist.linux-x86_64/egg/paramiko/__init__.py", line 22, in <module>
File "build/bdist.linux-x86_64/egg/paramiko/transport.py", line 34, in <module>
File "/usr/lib64/python2.7/site-packages/cryptography-2.7-py2.7-linux-x86_64.egg/cryptography/hazmat/primitives/ciphers/__init__.py", line 7, in <module>
from cryptography.hazmat.primitives.ciphers.base import (
File "/usr/lib64/python2.7/site-packages/cryptography-2.7-py2.7-linux-x86_64.egg/cryptography/hazmat/primitives/ciphers/base.py", line 12, in <module>
from cryptography.exceptions import (
File "/usr/lib64/python2.7/site-packages/cryptography-2.7-py2.7-linux-x86_64.egg/cryptography/exceptions.py", line 7, in <module>
from enum import Enum
ImportError: No module named enum
我安装的一些相应的包名及版本如下所示