最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

paramiko模塊安裝和使用(遠(yuǎn)程登錄服務(wù)器)

 更新時間:2014年01月27日 10:12:14   作者:  
paramiko是用python語言寫的一個模塊,遵循SSH2協(xié)議,支持以加密和認(rèn)證的方式,進(jìn)行遠(yuǎn)程服務(wù)器的連接,下面學(xué)習(xí)一下它的使用方法

一:簡介

由paramiko是用python語言寫的一個模塊,遵循SSH2協(xié)議,支持以加密和認(rèn)證的方式,進(jìn)行遠(yuǎn)程服務(wù)器的連接。

由于使用的是python這樣的能夠跨平臺運(yùn)行的語言,所以所有python支持的平臺,如Linux, Solaris, BSD, MacOS X, Windows等,paramiko都可以支持,因此,如果需要使用SSH從一個平臺連接到另外一個平臺,進(jìn)行一系列的操作時,paramiko是最佳工具之一。

舉個常見的例子,現(xiàn)有這樣的需求:需要使用windows客戶端,遠(yuǎn)程連接到Linux服務(wù)器,查看上面的日志狀態(tài),大家通常使用的方法會是:

1:用telnet

2:用PUTTY

3:用WinSCP

4:用XManager等…

那現(xiàn)在如果需求又增加一條,要從服務(wù)器上下載文件,該怎么辦?那常用的辦法可能會是:

1:Linux上安裝FTP并配置

2:Linux上安裝Sambe并配置…

大家會發(fā)現(xiàn),常見的解決方法都會需要對遠(yuǎn)程服務(wù)器必要的配置,如果遠(yuǎn)程服務(wù)器只有一兩臺還好說,如果有N臺,還需要逐臺進(jìn)行配置,或者需要使用代碼進(jìn)行以上操作時,上面的辦法就不太方便了。

使用paramiko可以很好的解決以上問題,比起前面的方法,它僅需要在本地上安裝相應(yīng)的軟件(python以及PyCrypto),對遠(yuǎn)程服務(wù)器沒有配置要求,對于連接多臺服務(wù)器,進(jìn)行復(fù)雜的連接操作特別有幫助。

二:安裝

安裝paramiko有兩個先決條件,python和另外一個名為PyCrypto的模塊。

通常安裝標(biāo)準(zhǔn)的python模塊,只需要在模塊的根目錄下運(yùn)行:

復(fù)制代碼 代碼如下:

python setup.py build

python setup.py install

以上兩條命令即可,paramiko和PyCrypto也不例外,唯一麻煩的就是安裝PyCrypto時,需要GCC庫編譯,如果沒有GCC庫會報錯,會導(dǎo)致PyCrypto以及paramiko無法安裝。

以下以32 位的windows XP為例,說明paramiko的安裝過程

1:安裝python,2.2以上版本都可以,我使用的是2.5,安裝過程略,并假設(shè)安裝目錄是c:\python。

2:判斷本地是否安裝了GCC,并在PATH變量可以找到,如果沒有,可使用windows 版的GCC,即MinGW,下載地址:http://sourceforge.net/projects/mingw/,然后運(yùn)行下載后的exe文件進(jìn)行網(wǎng)絡(luò)安裝,假設(shè)目錄為C:\mingw,在PATH中加入 C:\mingw\bin,并在c:\python\lib\distutils下新建一個名稱是distutils.cfg的文件,填入:

復(fù)制代碼 代碼如下:

[build]
compiler=mingw32
 

3:下載PyCrypto ,地址是

https://www.dlitz.net/software/pycrypto/

安裝PyCrypto:

解壓縮
在dos下進(jìn)入解壓縮的目錄,運(yùn)行

復(fù)制代碼 代碼如下:

C:\python\python.exe setup.py build
C:\python\python.exe setup.py install
 

安裝測試
運(yùn)行python.exe,在提示符下輸入:

復(fù)制代碼 代碼如下:

Import  Crypto

如果沒有出現(xiàn)錯誤提示,說明Crypto安裝成功

4:下載paramiko,地址是http://www.lag.net/paramiko/

解壓縮
在dos下進(jìn) 入解壓縮的目錄,運(yùn)行

復(fù)制代碼 代碼如下:

C:\python\python.exe setup.py build
C:\python\python.exe setup.py install

測試paramiko
運(yùn)行python.exe,在提示符下輸入:
復(fù)制代碼 代碼如下:

Import  paramiko

如果沒有出現(xiàn)錯誤提示,說明paramiko安裝成功

 

三: 使用paramiko

如果大家感覺安裝paramiko還是略有麻煩的話,當(dāng)使用到paramiko提供的方便時便會覺得這是十分值得的。

下面是兩種使用paramiko連接到linux服務(wù)器的代碼

方式一:

復(fù)制代碼 代碼如下:

ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect("某IP地址",22,"用戶名", "口令")

上面的第二行代碼的作用是允許連接不在know_hosts文件中的主機(jī)。

方式二:

復(fù)制代碼 代碼如下:

t = paramiko.Transport((“主機(jī)”,”端口”))
t.connect(username = “用戶名”, password = “口令”)

如果連接遠(yuǎn)程主機(jī)需要提供密鑰,上面第二行代碼可改成:
復(fù)制代碼 代碼如下:

t.connect(username = “用戶名”, password = “口令”, hostkey=”密鑰”)

 

下面給出實(shí)際的例子:

3.1 windows對linux運(yùn)行任意命令,并將結(jié)果輸出

如果linux服務(wù)器開放了22端口,在windows端,我們可以使用paramiko遠(yuǎn)程連接到該服務(wù)器,并執(zhí)行任意命令,然后通過 print或其它方式得到該結(jié)果,

復(fù)制代碼 代碼如下:

#!/usr/bin/python
import paramiko

ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect("某IP地址",22,"用戶名", "口令")
stdin, stdout, stderr = ssh.exec_command("你的命令")
print stdout.readlines()
ssh.close()

其中的”你的命令”可以任意linux支持的命令,如一些常用的命令:


df:查看磁盤使用情況
uptime:顯示系統(tǒng)運(yùn)行時間信息
cat:顯示某文件內(nèi)容
mv/cp/mkdir/rmdir:對文件或目錄進(jìn)行操作
/sbin/service/ xxxservice start/stop/restart:啟動、停止、重啟某服務(wù)
netstat -ntl |grep 8080:查看8080端口的使用情況
 或者 nc -zv localhost :查看所有端口的使用情況
find / -name XXX:查找某文件

這樣一來,對于linux的任何操作幾乎都可以通過windows端完成,如果對該功能進(jìn)行引申,還可以同時管理多臺服務(wù)器。

3.2 從widnows端下載linux服務(wù)器上的文件

復(fù)制代碼 代碼如下:

#!/usr/bin/python
import paramiko

t = paramiko.Transport((“主機(jī)”,”端口”))
t.connect(username = “用戶名”, password = “口令”)
sftp = paramiko.SFTPClient.from_transport(t)
remotepath='/var/log/system.log'
localpath='/tmp/system.log'
sftp.get(remotepath, localpath)
t.close()


3.3 從widnows端上傳文件到linux服務(wù)器

復(fù)制代碼 代碼如下:

#!/usr/bin/python
import paramiko

t = paramiko.Transport((“主機(jī)”,”端口”))
t.connect(username = “用戶名”, password = “口令”)
sftp = paramiko.SFTPClient.from_transport(t)
remotepath='/var/log/system.log'
localpath='/tmp/system.log'
sftp.put(localpath,remotepath)
t.close()

相關(guān)文章

  • Python實(shí)現(xiàn)操作Redis所有類型的方法詳解

    Python實(shí)現(xiàn)操作Redis所有類型的方法詳解

    Redis作為一款高性能的NoSQL數(shù)據(jù)庫,越來越受到了廣大開發(fā)者的喜愛。本篇博客將介紹如何使用Python操作Redis的所有類型,以及一些高級用法,感興趣的可以了解一下
    2023-04-04
  • Python實(shí)現(xiàn)多進(jìn)程之間共享變量

    Python實(shí)現(xiàn)多進(jìn)程之間共享變量

    Python多線程和多進(jìn)程之間共享變量的方法有所不同,多線程可以直接使用global變量,而多進(jìn)程則需要使用multiprocessing庫中的Value、Array、Queue等或Manager模塊,Pool進(jìn)程池中進(jìn)程間共享變量時,必須使用Manager模塊,在共享list時,不能直接賦值
    2024-11-11
  • Django中URLconf和include()的協(xié)同工作方法

    Django中URLconf和include()的協(xié)同工作方法

    這篇文章主要介紹了Django中URLconf和include()的協(xié)同工作方法,Django是Python眾人氣框架中最著名的一個,需要的朋友可以參考下
    2015-07-07
  • Python機(jī)器學(xué)習(xí)入門(六)之Python優(yōu)化模型

    Python機(jī)器學(xué)習(xí)入門(六)之Python優(yōu)化模型

    這篇文章主要介紹了Python機(jī)器學(xué)習(xí)入門知識,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-08-08
  • python gdal安裝與簡單使用

    python gdal安裝與簡單使用

    這篇文章主要介紹了python gdal安裝與簡單使用,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-08-08
  • django模型類中,null=True,blank=True用法說明

    django模型類中,null=True,blank=True用法說明

    這篇文章主要介紹了django模型類中,null=True,blank=True用法說明,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-07-07
  • pandas分別寫入excel的不同sheet方法

    pandas分別寫入excel的不同sheet方法

    今天小編就為大家分享一篇pandas分別寫入excel的不同sheet方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-12-12
  • python3 pandas 讀取MySQL數(shù)據(jù)和插入的實(shí)例

    python3 pandas 讀取MySQL數(shù)據(jù)和插入的實(shí)例

    下面小編就為大家分享一篇python3 pandas 讀取MySQL數(shù)據(jù)和插入的實(shí)例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-04-04
  • Python中for后接else的語法使用

    Python中for后接else的語法使用

    這篇文章主要介紹了Python中for后接else的語法使用,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-05-05
  • 安裝Anaconda3及使用Jupyter的方法

    安裝Anaconda3及使用Jupyter的方法

    這篇文章主要介紹了安裝Anaconda3及使用Jupyter的方法,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-10-10

最新評論

鄄城县| 紫阳县| 阿城市| 华阴市| 勐海县| 天祝| 铁岭县| 宜州市| 五台县| 塔河县| 新源县| 鄢陵县| 紫金县| 崇明县| 磴口县| 大竹县| 老河口市| 秦安县| 林西县| 钟祥市| 永和县| 陇西县| 咸阳市| 霍山县| 延寿县| 海伦市| 奇台县| 沅江市| 庆阳市| 广宁县| 镇康县| 沧源| 靖边县| 衢州市| 昌乐县| 汕头市| 姚安县| 兴仁县| 金门县| 固阳县| 张家界市|