paramikopython下載
❶ python中paramiko庫怎麼import
安裝paramiko有兩個先決條件,python和另外一個名為PyCrypto的模塊。通常安裝標準的python模塊,只需要在模塊的根目錄下運行:pythonsetup.pybuildpythonsetup.pyinstall備註:安裝前先檢查是否安裝gcc(yum-yinstallgcc)2.1PyCry
❷ python的paramiko模塊 支持連接交換機嗎
paramiko使用
paramiko模塊是基於python實現了SSH2遠程安全連接,支持認證和密鑰方式,可以實現遠程連接、命令執行、文件傳輸、中間SSH代理功能
安裝
pip install paramiko
或 easy_install paramiko
paramiko依賴第三方的Crypto,Ecdsa和pyhton-devel,所以需要安裝
paramiko核心組件
SSHClient類
SSHClient類是SSH服務會話的高級表示,該類實現了傳輸、通道、以及Sftp的校驗、建立的方法
connect 方法
connect方法實現了遠程ssh連接並作校驗
hostname 連接的目標主機
port=SSH_PORT 指定埠
username=None 驗證的用戶名
password=None 驗證的用戶密碼
pkey=None 私鑰方式用於身份驗證
key_filename=None 一個文件名或文件列表,指定私鑰文件
timeout=None 可選的tcp連接超時時間
allow_agent=True, 是否允許連接到ssh代理,默認為True 允許
look_for_keys=True 是否在~/.ssh中搜索私鑰文件,默認為True 允許
compress=False, 是否打開壓縮
sock=None,
gss_auth=False,
gss_kex=False,
gss_deleg_creds=True,
gss_host=None,
banner_timeout=None
參數
exec_command方法
遠程執行命令的方法,該命令的輸入與輸出流為標准輸入、標出輸出、標准錯誤輸出
command 執行的命令
bufsize=-1 文件緩沖區大小
timeout=None
get_pty=False
參數
load_system_host_key方法
夾在本地公鑰文件,默認為~/.ssh/known_hosts
filename=None 指定本地公鑰文件
參數
set_missing_host_key_policy方法
設置連接的遠程主機沒有本地主機密鑰或HostKeys對象時的策略,目前支持三種:用法:
set_missing_host_key_policy(paramiko.AutoAddPolicy())AutoAddPolicy 自動添加主機名及主機密鑰到本地HostKeys對象,不依賴load_system_host_key的配置。即新建立ssh連接時不需要再輸入yes或no進行確認
WarningPolicy 用於記錄一個未知的主機密鑰的python警告。並接受,功能上和AutoAddPolicy類似,但是會提示是新連接
RejectPolicy 自動拒絕未知的主機名和密鑰,依賴load_system_host_key的配置。此為默認選項
from_transport(cls,t) 創建一個已連通的SFTP客戶端通道
put(localpath, remotepath, callback=None, confirm=True) 將本地文件上傳到伺服器 參數confirm:是否調用stat()方法檢查文件狀態,返回ls -l的結果
get(remotepath, localpath, callback=None) 從伺服器下載文件到本地
mkdir() 在伺服器上創建目錄
remove() 在伺服器上刪除目錄
rename() 在伺服器上重命名目錄
stat() 查看伺服器文件狀態
listdir() 列出伺服器目錄下的文件
SFTPClient類
SFTPCLient作為一個sftp的客戶端對象,根據ssh傳輸協議的sftp會話,實現遠程文件操作,如上傳、下載、許可權、狀態
遠程連接並執行命令
實現遠程連接主機,並執行命令,同時記錄日誌
* 直接驗證方式
❸ ansible-playbook瀹夎呭湪鍝涓鐩褰
銆pip2.6瀹夎匒nsible錛屼絾鏄痯ip2.6鏄鍩轟簬python2.6瀹夎呯殑錛岃宲ython2.6鐗堟湰鏈夌偣鑰併傛墍浠ヨ屽凡鐢╬ython2.7瀹夎匒nsible銆
銆銆鍏跺疄python2.7瀹夎匒nsible鍜宲ython2.6瀹夎呰繃紼嬪熀鏈涓婃槸涓鏍風殑錛屽彧涓嶈繃鍦ㄥ畨瑁匒nsible鎵闇瑕佺殑妯″潡鍜孉nsible鏃訛紝闇瑕佺敤pip2.7鏉ュ畨瑁呫
銆銆瀹夎呰繃紼嬪備笅錛
銆銆1銆佸畨瑁卲ython2.7
銆銆瀹夎卲ython2.7鍓嶇殑鍑嗗
銆銆yum-yinstallreadlinereadline-devel
銆銆yum-yinstallzlib-devel
銆銆yum-yinstallopensslopenssl-devel
銆銆瀹夎単cc緙栬瘧宸ュ叿
銆銆yum-yinstallgcc
銆銆涓嬭澆python2.7瀹夎呭寘
銆銆涓嬭澆鍦板潃錛歸ww python.org
銆銆yum-yinstallxz
銆銆tarJxfPython-2.7.11.tar.xz
銆銆cdPython-2.7.11
銆銆mkdir/usr/local/python27
銆銆./configure--prefix=/usr/local/python27
銆銆make&&makeinstall
銆銆鍒涘緩杞榪炴帴
銆銆ln-s/usr/local/python27/bin/python2.7/usr/bin/python2.7
銆銆2銆佸畨瑁卲ip2.7
銆銆瀹夎卻etuptools
銆銆涓嬭澆鍦板潃錛歨ttps//pypi.python.org/pypi?%3Aaction=search&term=setuptools&submit=search
銆銆瀹夎咃細
銆銆tarzxfsetuptools-19.6.2.tar.gz
銆銆cdsetuptools-19.6.2
銆銆python2.7setup.pyinstall
銆銆瀹夎卲ip
銆銆涓嬭澆鍦板潃錛歨ttps//pypi.python.org/pypi/pip/
銆銆瀹夎咃細
銆銆tarzxfpip-8.1.0.tar.gz
銆銆cdpip-8.1.0
銆銆python2.7setup.pyinstall
銆銆鍒涘緩杞榪炴帴
銆銆ln-s/usr/local/python27/bin/pip2.7/usr/bin/pip2.7
銆銆3銆佸畨瑁匒nsible
銆銆瀹夎呬緷璧栧寘
銆銆yum-yinstalllibffilibffi-devel
銆銆yum-yinstallgccgcc-c++python-develpython-simplejson
銆銆瀹夎匒nsible闇瑕佺殑python妯″潡
銆銆pip2.
銆銆瀹夎匒nsible
銆銆pipinstallansible
銆銆瀹夎呭畬鎴愬悗錛宎nsible鐨勬墽琛屾枃浠跺湪python2.7鐨刡in鐩褰曚笅
銆銆[root@localhostbin]#cd/usr/local/python27/bin/
銆銆[root@localhostbin]#ll
銆銆total6240
銆銆-rwxr-xr-x.1rootroot110Jun1517:312to3
銆銆-rwxr-xr-x.1rootroot4203Jun1517:48ansible
銆銆-rwxr-xr-x.1rootroot4203Jun1517:48ansible-console
銆銆-rwxr-xr-x.1rootroot4203Jun1517:48ansible-doc
銆銆-rwxr-xr-x.1rootroot4203Jun1517:48ansible-galaxy
銆銆-rwxr-xr-x.1rootroot4203Jun1517:48ansible-playbook
銆銆-rwxr-xr-x.1rootroot4203Jun1517:48ansible-pull
銆銆-rwxr-xr-x.1rootroot4203Jun1517:48ansible-vault
銆銆-rwxr-xr-x.1rootroot326Jun1517:41easy_install
銆銆-rwxr-xr-x.1rootroot334Jun1517:41easy_install-2.7
銆銆-rwxr-xr-x.1rootroot108Jun1517:31idle
銆銆-rwxr-xr-x.1rootroot284Jun1517:42pip
銆銆-rwxr-xr-x.1rootroot286Jun1517:42pip2
銆銆-rwxr-xr-x.1rootroot290Jun1517:42pip2.7
銆銆-rwxr-xr-x.1rootroot93Jun1517:31pydoc
銆銆lrwxrwxrwx.1rootroot7Jun1517:33python->python2
銆銆lrwxrwxrwx.1rootroot9Jun1517:33python2->python2.7
銆銆-rwxr-xr-x.1rootroot6271354Jun1517:31python2.7
銆銆-rwxr-xr-x.1rootroot1696Jun1517:33python2.7-config
銆銆lrwxrwxrwx.1rootroot16Jun1517:33python2-config->python2.7-config
銆銆lrwxrwxrwx.1rootroot14Jun1517:33python-config->python2-config
銆銆-rwxr-xr-x.1rootroot18556Jun1517:31smtpd.py
銆銆緙栬緫/etc/profile鏂囦歡錛屽姞鍏ヤ互涓嬮厤緗
銆銆exportANSIBLE_HOME=/usr/local/python27
銆銆exportPATH=$PATH:$ANSIBLE_HOME/bin[root@localhostbin]#ansible--version
銆銆ansible2.1.0.0
銆銆configfile=
銆銆configuredmolesearchpath=Defaultw/ooverrides
❹ paramiko pip安裝和源碼安裝有什麼區別
Distribute 和 PIP都是python安裝包的工具,python安裝包的工具有easy_install, setuptools, pip,distribute。
使用這些工具都能下載並安裝django。
Distribute是對標准庫disutils模塊的增強,我們知道disutils主要是用來更加容易的打包和分發包,特別是對其他的包有依賴的包。
安裝Distribute
可以通過distribute_setup.py 腳本來安裝Distribute,也可以通過easy_install, pip,源文件來安裝,不過使用distribute_setup.py來安裝是最簡單和受歡迎的方式
Pip 是安裝python包的工具,提供了安裝包,列出已經安裝的包,升級包以及卸載包的功能。
Pip 是對easy_install的取代,提供了和easy_install相同的查找包的功能,因此可以使用easy_install安裝的包也同樣可以使用pip進行安裝。
安裝Pip
Pip的安裝可以通過源代碼包,easy_install或者腳本。
easy_install:
$ easy_install pip
OK, 下面來看一下Pip的使用
安裝package
$ pip install Markdown
列出安裝的packages
$ pip freeze
安裝特定版本的package
通過使用==, >=, <=, >, <來指定一個版本號。
$ pip install 'Markdown<2.0'
$ pip install 'Markdown>2.0,<2.0.3'
升級包
升級包到當前最新的版本,可以使用-U 或者 --upgrade
$ pip install -U Markdown
卸載包
$ pip uninstall Markdown
查詢包
pip search "Markdown"