linux批量分发_运行_killcode(python)
准备工作
对每个可以进入linux系统设备,统一用户名和密码。
同时对设备进行标号如
xxx001-xxx010
paramiko
ssh是一个协议,OpenSSH是其中一个开源实现,paramiko是Python的一个库,实现了SSHv2协议(底层使用cryptography)。
有了Paramiko以后,我们就可以在Python代码中直接使用SSH协议对远程服务器执行操作,而不是通过ssh命令对远程服务器进行操作。
由于paramiko属于第三方库,所以需要使用如下命令先行安装
pip3 install paramiko
paramiko包含两个核心组件:SSHClient和SFTPClient。
SSHClient的作用类似于Linux的ssh命令,是对SSH会话的封装,该类封装了传输(Transport),通道(Channel)及SFTPClient建立的方法(open_sftp),通常用于执行远程命令。
SFTPClient的作用类似与Linux的sftp命令,是对SFTP客户端的封装,用以实现远程文件操作,如文件上传、下载、修改文件权限等操作。
Paramiko中的几个基础名词:
Channel:是一种类Socket,一种安全的SSH传输通道;
Transport:是一种加密的会话,使用时会同步创建了一个加密的Tunnels(通道),这个Tunnels叫做Channel;
Session:是client与Server保持连接的对象,用connect()/start_client()/start_server()开始会话。
1 | def ssh2(ip,username,passwd,cmd): |
sshpass
- 安装sshpass
sudo apt-get install sshpass
- 使用sshpass
sshpass -p xxxxx
使用该命令可以提前输入密码,不用后续输入密码。
- 通过sshpass即可跳过输入密码环境直接scp
sshpass -p xxxx scp 源地址 目的地址
n个linux同时执行程序
功能介绍: 1.python 2.kill all 3.send file 4.add channel 5.move 6.move send
- 自动识别局域网中所有可进入设备
- n个设备可以同时运行一个python程序
- 关闭n个设备中运行的python代码
- 分发代码
- 增加信道
- 移动 其中
carnum and 1.Advance 2.Retreat 3.Left 4.Right and move length
例:2 1 2 即二号设备向前运行2个单位的距离
- 分发一个文件夹
1 | #-*- coding: utf-8 -*- |
- 本文链接:http://www.codekp.cn/2021/11/08/linux%E6%89%B9%E9%87%8F%E5%88%86%E5%8F%91-%E8%BF%90%E8%A1%8C-killcode/
- 版权声明:本博客所有文章除特别声明外,均默认采用 许可协议。
您可以点击下方按钮切换对应评论系统。
GitHub Issues