pssh 命令介绍和使用案例
pssh
(Parallel SSH)是一个基于Python的命令行工具,允许用户在多台远程主机上并行执行命令。它非常适合系统管理员在管理大规模集群时提高效率,支持同时连接到多个远程主机并执行命令或复制文件。
基本语法
pssh [options] command
常用选项
-h <file>
: 指定包含主机列表的文件。-H <hosts>
: 直接指定要连接的主机,多个主机用逗号分隔。-l <username>
: 指定登录远程主机的用户名。-p <num>
: 设置并发连接的最大数量。-o <dir>
: 指定输出结果的目录。-e <dir>
: 指定错误输出的目录。-t <timeout>
: 设置命令执行的超时时间(以秒为单位)。-A
: 手动输入密码模式。-i
: 显示每个主机的输出。--help
: 显示帮助信息。
安装部署
命令参数
配置别名
echo "alias pssh=parallel-ssh" >> ~/.bashrc && source ~/.bashrc
使用案例
示例 1:在多台主机上执行简单命令
假设你有一个名为hosts.txt
的文件,内容如下:
192.168.1.101
192.168.1.102
192.168.1.103
要在这些主机上并行执行uptime
命令,可以使用:
pssh -h hosts.txt -l username -i uptime
这将显示每个主机的运行时间和负载信息。
示例 2:复制文件到多台主机
要将本地文件复制到多台远程主机,可以使用pscp
命令。例如,将本地的/etc/profile
文件复制到每台远程主机的/tmp/
目录:
pscp -h hosts.txt /etc/profile /tmp/
示例 3:设置并发连接数
如果你有大量主机,可以设置并发连接数以提高效率:
pssh -h hosts.txt -l username -p 10 -i uptime
这将同时连接最多10台主机执行命令。
##