python通過SSH獲取遠端主機文件

easy_install.exe ssh

import ssh  client = ssh.SSHClient()  client.set_missing_host_key_policy(ssh.AutoAddPolicy())  client.connect("192.168.1.1", port = 22, username = "wt", password = "123456")  stdin, stdout, stderr = client.exec_command("ls -alh")  stdout.read()  sftp = client.open_sftp()  sftp.mkdir('abc')#在遠端主機創建目錄abc  sftp.get('default.conf', r'c:default.conf')#下載遠端家目錄文件到本地  sftp.put(r'c:test.txt', test.txt)#上傳本地文件到遠端家目錄

get的時候是一個文件一個文件的獲取,但是不能獲取整個目錄,嘗試將目錄打包下載壓縮包也報錯。由於linux本身的scp命令是需要交互的,無法自動進行操作,這對我們的自動化部署來說很糾結。這種方法省略了使用SSH的時候需要點"yes"然後輸入密碼的麻煩。或者需要本地創建密鑰再傳到遠端主機的麻煩。利用pxe我們可以自動安裝作業系統,系統安裝好了以後直接用一系列的python腳本完成應用伺服器的部署。完全不需要人工介入一切可以自動完成,很爽~~~~~

Tags: