pssh是一款开源的软件,使用python实现,用于批量ssh操作大批量机器;pssh是一个可以在多台服务器上执行命令的工具,同时支持拷贝文件,是同类工具中很出色的;比起for循环的做法,我更推荐使用pssh!使用pssh的前提是:必须在本机与其他服务器上配置好密钥认证访问(即ssh信任关系)。

语法格式:pssh [参数] [文件]

常用参数:

-h执行命令的远程主机列表文件
-l远程机器的用户名
-p一次最大允许多少连接
-A提示输入密码并且把密码传递给ssh(注意这个参数添加后只是提示作用,随便输入或者不输入直接回车都可以)
-O设置ssh参数的具体配置,参照ssh_config配置文件
-x传递多个SSH 命令,多个命令用空格分开,用引号括起来
-X同-x 但是一次只能传递一个命令

参考实例

批量执行命令:

[root@linux-arae-cc ~]# pssh -h hosts.txt -l root -i 'uptime'

如果添加-A参数,那么即使提前做了ssh信任关系,还是会提示输入密码:

[root@linux-arae-cc ~]# pssh -h hosts.txt -l root -i -A 'uptime'