想找一个轻量的批量管理机器的工具,网上搜了一下发现有介绍pssh这个工具,用python写的,python版本大于2.4即可,于是下载试了一下。
1 下载

wget http://parallel-ssh.googlecode.com/files/pssh-2.3.1.tar.gz

2 安装

tar zxvf pssh-2.3.1.tar.gz
cd pssh-2.3.1/
python setup.py install

3 安装结果

changing mode of /usr/local/bin/pnuke to 755
changing mode of /usr/local/bin/pscp to 755
changing mode of /usr/local/bin/pslurp to 755
changing mode of /usr/local/bin/pssh to 755
changing mode of /usr/local/bin/pssh-askpass to 755
changing mode of /usr/local/bin/prsync to 755

安装完后最后面几行会显示如上结果,显示安装了几个命令,分别安装在哪里。

4 介绍pssh参数

-h 执行命令的远程主机列表 或者 -H user@ip:port 文件内容格式[user@]host[:port]

-l 远程机器的用户名

-p 一次最大允许多少连接

-o 输出内容重定向到一个文件

-e 执行错误重定向到一个文件

-t 设置命令执行的超时时间

-A 提示输入密码并且把密码传递给ssh

-O 设置ssh参数的具体配置,参照ssh_config配置文件

-x 传递多个SSH 命令,多个命令用空格分开,用引号括起来

-X 同-x 但是一次只能传递一个命令

-i 显示标准输出和标准错误在每台host执行完毕后

-I 读取每个输入命令,并传递给ssh进程 允许命令脚本传送到标准输入

5 介绍软件包内其他命令

pscp 传输文件到多个hosts,他的特性和scp差不多

pslurp 从多台远程机器拷贝文件

pnuke kill远程机器的进程

6 试用pssh

在ip.txt 输入你需要执行命令的远程机器,格式:user@ip:port

注意两个参数-i -P 显示结果的差别