目录
[一、安装 pssh](#一、安装 pssh)
[二、pssh 命令](#二、pssh 命令)
[三、pscp.pssh 命令](#三、pscp.pssh 命令)
[四、prsync 命令](#四、prsync 命令)
一、安装 pssh
bash
# 安装 pssh 命令,需要用到 epel-release
yum -y install epel-release
yum -y install pssh
# 安装完成后,可以使用多种并行工具,例如: pssh、pscp.pssh、prsync等.
# pssh 和 pscp.pssh 和 prsync 通用参数:
-h <hostfile> # 指定文件名,文件内容一行一个IP
-H <host1>,<host2> # 指定单个IP,多个IP之间使用"空格"隔开
-l <user> # 指定登录远程主机的用户名。
-p <parallel> # 指定并行执行的最大连接数。默认为32。
-i # 交互式模式,允许用户输入密码。
-A # 使用SSH代理进行连接。
-x <args> # 传递额外的参数给SSH客户端。
-t <timeout> # 设置连接超时时间(秒)。
-O <option> # 指定SSH选项,如`StrictHostKeyChecking=no`。
-i <identity_file> # 指定SSH私钥文件。
-v # 显示详细的调试输出。
-o <output_directory># 指定输出目录,用于保存每个主机的输出结果。
-P # 在输出中显示每个主机的标识符(显示进度条)。
-i <input_file> # 指定要在所有主机上执行的命令文件。
二、pssh 命令
bash
# 登录iplist文件中的主机,执行 uptime 命令
pssh -h iplist -i 'uptime'
三、pscp.pssh 命令
bash
# 将本地的 test.txt 文件并行复制到目标i服务器的 /tmp 目录下
pscp.pssh -H "10.88.62.181 10.88.62.182" test.txt /tmp
四、prsync 命令
bash
# 并行同步本地目录 /project/ 到目标服务器的 /var/www/ 目录
prsync -H "10.88.62.181 10.88.62.182" -arvz /project/ /var/www/
-arvz 是 rsync 的常用选项,表示递归、保留权限、增量传输和压缩数据。