本文共 1744 字,大约阅读时间需要 5 分钟。
pssh命令是一个python编写可以在多台服务器上执行命令的工具,同时支持拷贝文件,是同类工具中很出色的,类似pdsh,个人认为相对pdsh更为简便,使用必须在各个服务器上配置好密钥认证访问。
pssh命令安装
1 2 3 4 5 6 7 8 | 在CentOS系统环境下,介绍yum的安装和源码安装的方式: yum安装: yum install pssh 源码安装: wget http: //parallel-ssh.googlecode.com/files/pssh-2.3.1.tar.gz tar xf pssh- 2.3 . 1 .tar.gz cd pssh- 2.3 . 1 / python setup.py install |
== 参数命令介绍 ==
'''介绍pssh参数''' pssh 在多个主机上并行地运行命令
选项
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | --version:查看版本 <br>--help:查看帮助,即此信息 <br>-h:主机文件列表,内容格式”[user@]host[:port]” -h:执行命令的远程主机列表 或者 -H user@ip:port 文件内容格式[user@]host[:port] -p:并发的线程数,一次最大允许多少连接 -l:远程机器的用户名 -o:输出内容重定向到一个文件 -e:执行错误重定向到一个文件 -t:设置命令执行的超时时间, 0 无限制 -O:设置ssh参数的具体配置,参照ssh_config配置文件 -v:详细模式 -A:手动输入密码模式,提示输入密码并且把密码传递给ssh -x:传递多个SSH 命令,多个命令用空格分开,用引号括起来 -X:同-x 但是一次只能传递一个命令 -P:执行时输出执行信息 -i 显示标准输出和标准错误在每台host执行完毕后 |
'''其他命令'''
pscp 传输文件到多个hosts,类似scp
pslurp 从多台远程机器拷贝文件到本地
pnuke 并行在远程主机杀进程
prsync 使用rsync协议从本地计算机同步到远程主机
== 实例 ==
pssh
1 2 3 4 5 6 7 8 | # pssh -h ip.txt -l root chkconfig --level 2345 snmpd on [ 1 ] 10 : 59 : 29 [SUCCESS] ... ... [ 2 ] 10 : 59 : 29 [SUCCESS] ... ... [ 3 ] 10 : 59 : 29 [SUCCESS] ... ... # pssh -h ip.txt -i uptime [ 1 ] 11 : 15 : 03 [SUCCESS] Mar.mars.he 11 : 15 : 11 up 4 days, 16 : 25 , 1 user, load average: 0.00 , 0.00 , 0.00 [ 2 ] 11 : 15 : 03 [SUCCESS] Jan.mars.he 11 : 15 : 12 up 3 days, 23 : 26 , 0 users, load average: 0.00 , 0.00 , 0.00 [ 3 ] 11 : 15 : 03 [SUCCESS] Feb.mars.he 11 : 15 : 12 up 4 days, 16 : 26 , 2 users, load average: 0.08 , 0.02 , 0.01 |
pscp
1 2 3 4 | $ pscp -h ip.txt -l root /etc/snmp/snmpd.conf /etc/snmp/snmpd.conf [ 1 ] 11 : 00 : 42 [SUCCESS] ... ... [ 2 ] 11 : 00 : 42 [SUCCESS] ... ... [ 3 ] 11 : 00 : 42 [SUCCESS] ... ... |