日常工作中会遇到很多在不同的机器做相同的操作,首先我们会想到挨个机器去操作,当然这也是一种方式, 但是万一要操作很多台,既费时又费力 还容易出错,那么接下来python帮你搞定 首先我们需要安装 接下来介绍 一下paramiko 这个包呢主要是SSHClient和SFTPClient;看组件名我们应该就知道ssh 是linux中远程连接的 ftp是文件传输 我们就可以根据自己的需要来选取组件了 一:首先我们来介绍SSHClient 操作: 1.ssh连接操作呢 分为俩种: 1.1:通过生成的ssh秘钥来连接: 1.2:通过主机密码来连接需要用到Transport: 然后看一下我使用的,我是把很多机器配置公钥为了让另一台机器可以免密登录 paramiko
pip install paramiko
import paramiko # ssh秘钥文件路径 private_key_path = '/root/.ssh/id_rsa' key = paramiko.RSAKey.from_private_key_file(private_key_path) # 构建ssh客户端 ssh = paramiko.SSHClient() # 自动保存策略 ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) # 连接服务端 ip自己跟换 ssh.connect(127.0.0.1, 22, 'root', key) # 执行ls 命令 stdin, stdout, stderr = ssh.exec_command('ls') # 获取执行的内容 res = unicode_utils.to_str(stdout.read())
import paramiko # 创建一个通道 transport = paramiko.Transport(('hostname', 22)) # 设置连接用户名密码 transport.connect(username='root', password='root') # 构建客户端 ssh = paramiko.SSHClient() ssh._transport = transport stdin, stdout, stderr = ssh.exec_command('ls') print(stdout.read().decode('utf-8')) transport.close()
import paramiko private_key_path = '/root/.ssh/id_rsa' key = paramiko.RSAKey.from_private_key_file(private_key_path) ssh = paramiko.SSHClient() ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) # 多台主机ip host = [ip1,ip2,ip3] # 把***** 写入到每台机器的authorized_keys中 for h in host: print h ssh.connect(h, 22, 'root', key) stdin, stdout, stderr = ssh.exec_command('echo ssh-rsa ***** >> /root/.ssh/authorized_keys')
本网页所有视频内容由 imoviebox边看边下-网页视频下载, iurlBox网页地址收藏管理器 下载并得到。
ImovieBox网页视频下载器 下载地址: ImovieBox网页视频下载器-最新版本下载
本文章由: imapbox邮箱云存储,邮箱网盘,ImageBox 图片批量下载器,网页图片批量下载专家,网页图片批量下载器,获取到文章图片,imoviebox网页视频批量下载器,下载视频内容,为您提供.
阅读和此文章类似的: 全球云计算