轻量级自动化运维工具 ---pssh&pscp.pssh
  bYdMetjCLs2g 2023年11月19日 21 0

 pssh:基于python编写,可在多台服务器上执行命令的工具,也可实现文件复 制,提供了基于ssh和scp的多个并行工具 项目:http://code.google.com/p/parallel-ssh/

  pdsh:Parallel remote shell program,是一个多线程远程shell客户端,可以 并行执行多个远程主机上的命令。 pdsh可以使用几种不同的远程shell服务,包 括标准的“rsh”,Kerberos IV和ssh 项目: https://pdsh.googlecode.com/

  mussh:Multihost SSH wrapper,是一个shell脚本,允许您使用一个命令在 多个主机上通过ssh执行命令或脚本。 mussh可使用ssh-agent和RSA / DSA密 钥,以减少输入密码 项目:http://www.sourceforge.net/projects/mussh

说明:以上工具都包含在EPEL源中,配置yum源可以参考这个博客:https://www.cnblogs.com/alexlv/p/15252346.html

  一、安装pssh包

yum install pssh -y

pssh 工具

  选项如下:

--version:查看版本 

-h:主机文件列表,内容格式”[user@]host[:port]”

-H:主机字符串,内容格式”[user@]host[:port]”

-A:手动输入密码模式   -i:每个服务器内部处理信息输出

-l:登录使用的用户名   -p:并发的线程数【可选】

-o:输出的文件目录【可选】

-e:错误输出文件【可选】

-t:TIMEOUT 超时时间设置,0无限制【可选】

-O:SSH的选项

-P:打印出服务器返回信息

-v:详细模式

pssh 示例

  -H指定IP地址 ;-A 密码验证,默认以当前用户;-i 打印执行结果在屏幕上

pssh -H "172.16.8.180" -A -i hostname

通过pssh批量关闭\开启多台机器的selinux

  -h:主机文件列表,内容格式(将需要控制的主机IP地址存放在文件中)

[11:14:31 root@localhost ~]#cat host.txt 
192.168.1.6
192.168.1.7
[11:17:58 root@localhost ~]#pssh -h host.txt -A -i "sed -i 's/SELINUX=.*/SELINUX=enforcing/' /etc/selinux/config"

多台机器执行结果重定向到 本机的文件夹里

 

pssh -h host.txt -A -i -o /data/host.log hostname

 

多台机器重定向到 本机的文件,有几台机器就生成几个文件

pssh -h host.txt -i -A -o /data/ hostname

批量发送指令(指定用户)

pssh -H  root@192.168.1.7 -i -A  setenforce 1

将标准错误和标准正确重定向都保存至/app目录下

pssh -H 192.168.1.10 -o /app -e /app -i “hostname”

 

 pscp.pssh

 pscp.pssh功能是将本地文件批量复制到远程主机 

  pscp-pssh选项

    -v 显示复制过程

    -r 递归复制目录

 

将本地的/data/host.log/192.168.1.6 文件复制到/data/ 

pscp.pssh -A -H 192.168.1.6 /data/host.log/192.168.1.6 /data/

将本地的/data/host.log/192.168.1.6 文件复制到 host.txt 文件里IP对应主机的data上

pscp.pssh -A -h host.txt /data/host.log/192.168.1.6 /data/

将本地多个文件批量复制到/data/ 

pscp.pssh -A -H 192.168.1.6 /data/host.log/192.168.1.6 /data/host.log/192.168.1.7 /data/

将本地目录批量复制到/data/目录

pscp.pssh -A -H 192.168.1.6 -r /data/host.log/ /data/

 


 pslurp命令

  pslurp功能是将远程主机的文件批量复制到本地

  pslurp选项

    -L 指定从远程主机下载到本机的存储的目录,local是下载到本地后的名称

    -r 递归复制目录

批量下载目标服务器的passwd文件至/data下,并更名为user

pslurp -A -H 192.168.1.6 -L /data /etc/passwd user

#在data下生成文件夹名为对应IP地址的文件夹下的user

 

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月19日 0

暂无评论

推荐阅读
  Yoru5qB4TSKM   2023年12月10日   36   0   0 服务器重启IP
  aYmIB3fiUdn9   2023年12月08日   49   0   0 客户端IPNATlvs
bYdMetjCLs2g