使用PSSH批量操作Linux伺服器
轉載自http://www.cnblogs.com/lurenjiashuo/p/pssh.html
簡介
伺服器多了,有一個問題就是如何批量快速操作多臺伺服器,在網上搜到了PSSH工具,試用了一下發現挺好用,推薦給大家。
pssh是一個python編寫的可以在多臺伺服器上執行命令的輕量級管理工具,同時支援拷貝檔案,python版本大於2.4即可,專案地址:parallel-ssh。
安裝
$ wget http://parallel-ssh.googlecode.com/files/pssh-2.3.1.tar.gz $ tar -xzvf pssh-2.3.1.tar.gz $ cd pssh-2.3.1 $ python setup.py install
PSSH相關引數
- -h 執行命令的遠端主機列表檔案,檔案內容格式[user@]host[:port]
- 如 test@127.0.0.2:229
- -H 執行命令主機,主機格式 user@ip:port
- -l 遠端機器的使用者名稱
- -p 一次最大允許多少連線
- -P 執行時輸出執行資訊
- -o 輸出內容重定向到一個檔案
- -e 執行錯誤重定向到一個檔案
- -t 設定命令執行超時時間
- -A 提示輸入密碼並且把密碼傳遞給ssh(如果機器都是ssh key打通的則無需加-A)
- -O 設定ssh一些選項
- -x 設定ssh額外的一些引數,可以多個,不同引數間空格分開
- -X 同-x,但是隻能設定一個引數
- -i 顯示標準輸出和標準錯誤在每臺host執行完畢後
用法示例
先建立一個文字檔案hosts.txt,存放要操作的機器列表,格式為[user@]host[:port]:
user1@127.0.0.1:1254 user2@127.0.0.2 127.0.0.3
用pssh檢視所有伺服器的uptime:
$ pssh -i -h hosts.txt 'uptime'
可根據需要把 update 換為別的命令
附加工具
pssh安裝後附加了一些很好用的工具,主要有:
1、pscp
作用:傳輸檔案到多個hosts,類似scp
示例:
$ pscp -h hosts.txt foo.txt /home/foo.txt
2、pslurp
作用:從多臺遠端機器拷貝檔案到本地
示例:
$ pslurp -h hosts.txt /etc/hosts local_dir
3、pnuke
作用:並行在遠端主機殺程式
示例:
$ pnuke -h hosts.txt -l root java
4、prsync
作用:使用rsync協議從本地計算機同步到遠端主機
示例:
$ prsync -r -h hosts.txt foo /home/foo
參考文件
http://www.opstool.com/article/266
http://linux.die.net/man/1/pssh
相關文章
- 使用PSSH批量SSH操作Linux伺服器Linux伺服器
- Linux下使用Ansible處理批量操作Linux
- linux運維工具psshLinux運維
- 自動化批量管理工具pssh - 運維小結運維
- 使用PrepareStatement實現批量插入操作REST
- shell指令碼批量操作使用者指令碼
- mybatis批量操作MyBatis
- ORACLE批量操作Oracle
- Linux伺服器批量ssh免密登陸Linux伺服器
- Mybatis批量操作demoMyBatis
- DocumentFragment批量操作domFragment
- 使用ansible批量管理遠端伺服器伺服器
- Linux批量建立使用者指令碼Linux指令碼
- linux批量新增使用者指令碼Linux指令碼
- 教你玩轉Linux—新增批量使用者Linux
- linux批量建立和刪除使用者Linux
- linux批量殺掉程式linux批量殺掉程式Linux
- linux下通過sql檔案批量操作指令碼樣本LinuxSQL指令碼
- mongodb批量操作, bulk_write,MongoDB
- 監控批量操作進度
- 新建linux伺服器初始化操作Linux伺服器
- linux下批量修改使用者密碼Linux密碼
- 自動批量對linux伺服器安裝配置NTP服務Linux伺服器
- 如何使用 Shell 指令碼掩蓋 Linux 伺服器上的操作痕跡?指令碼Linux伺服器
- 深度解析Django REST Framework 批量操作DjangoRESTFramework
- mybatis 的crud及批量cud操作MyBatis
- CQRS批量操作的效能問題
- 走進Linux伺服器之一:Linux操作基礎——Linux基本檔案操作(讀寫)Linux伺服器
- redis大幅效能提升之使用管道(PipeLine)和批量(Batch)操作RedisBAT
- 一個指令碼解決AD使用者批量操作問題指令碼
- LINUX 使用批量刪除檔案的幾種方法Linux
- python中使用subprocess批量執行linux下命令PythonLinux
- 在Linux中使用mmv命令批量修改檔名稱Linux
- linux 使用者組操作Linux
- linux下使用者操作Linux
- Linux伺服器---使用mysqlLinux伺服器MySql
- python2 &&pssh 安裝Python
- linux伺服器目錄檔案的命令操作Linux伺服器