首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

通过python 执行 nohup 生效的解决

通过paramiko模块ssh登录linux,然后用exec_command方法执行带有nohup的shell命令生效,python脚本如下: import paramiko import time...ssh = paramiko.SSHClient() ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) ssh.connect('192.168.1.2...', '123456') ssh.exec_command('nohup ping localhost & \n') time.sleep(1) 脚本执行完之后ping进程并没有继续运行,这可能是因为exec_command...安装:pip install paramiko 二、问题描述: import paramiko # 创建SSH对象 ssh = paramiko.SSHClient() # 允许连接不在know_hosts...logger.info(f"服务器---{easy_conn.connect_host['ip']}暂时没有任务") easy_conn.quit() 以上这篇通过python 执行 nohup 生效的解决就是小编分享给大家的全部内容了

3.2K10

更优雅地远程操作服务器:Paramiko库的实践

持续坚持原创输出,点击蓝字关注我吧 作者:软件质量保障 知乎:https://www.zhihu.com/people/iloverain1024 ​作为一名测试,如果问你工作中和什么工具打交道的比较多...Paramiko能做什么 paramiko是Python语言写的一个库,遵循SSH2协议,支持以加密和认证的方式进行远程服务器的连接,利用paramiko,可以方便地进行SSH连接服务器和服务器间文件传输...() # 自动添加策略,保存服务器的主机名和密钥信息,如果添加,那么不再本地know_hosts文件中记录的主机将无法连接 ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy...ssh_stderr = session.exec_command("ls -l") content = ssh_stdout.read() return session 2.执行命令 使用exec_command...username, password, content): session = connect_with_password(host, username, password) #使用exec_command

53120
您找到你想要的搜索结果了吗?
是的
没有找到

Paramiko远程操作Linux服务器

那么,我们为何要学习Paramiko呢,它可以解决什么问题呢,又能给我们日常工作带来什么呢?...在「测试打工人如何学习」一文中说过,职场打工人学习技能和工具的很大原因是为了解决工作中遇到的某些具体问题,我们学习Paramiko当然也是为了解决某些问题。...使用cd命令进行目录切换时生效 当使用Paramiko库远程执行命令时,cd命令无法直接切换目录,这是因为cd是一个shell内置命令,无法直接通过Paramiko执行,此时可以通过在执行命令时添加额外的命令前缀来模拟...因此,我们将 cd 命令和需要在目标目录中执行的其他命令连接在一起。...脚踏实地,仰望星空,和坨坨一起学习软件测试,升职加薪!

25620

python paramiko

paramiko是用python语言写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接了,下面我们就来给各位一起验证一下python模块paramiko与ssh安装与使用示例吧...二、paramiko的连接 使用paramiko模块有两种连接方式,一种是通过paramiko.SSHClient()函数,另外一种是通过paramiko.Transport()函数。...私钥方式用户验证 key_filename,私钥文件名 timeout,超时时间 allow_agent,是否允许ssh代理 look_for_keys,是否允许搜索私钥文件 compress,打开时是否压缩 exec_command...方法 exec_command(self, command, bufzise=-1) 参数说明: command,执行的命令 bufsize,文件缓冲区大小,-1不限制 load_system_host_keys...load_system_host_keys()配置 RejectPolicy,自动拒绝未知主机名和密钥,依赖load_system_host_keys()配置 WarnningPolicy,功能与AutoAddPolicy

1.4K10

websocket+Django+python+paramiko实现web页面执行命令并实时输出

一、概述 WebSocket WebSocket的工作流程:浏览器通过JavaScript向服务端发出建立WebSocket连接的请求,在WebSocket连接建立成功后,客户端和服务端就可以通过 TCP...paramiko paramiko模块,基于SSH用于连接远程服务器并执行相关操作。 shell脚本 /opt/test.sh #!...安装模块 pip3 install paramiko dwebsocket django==2.1.4 创建项目 使用Pycharm创建一个项目 wdpy ,这个是测试的,名字无所谓! ?...# def exec_command(comm): #     hostname = '192.168.0.162' #     username = 'root' #     password ...= 'root' # #     ssh = paramiko.SSHClient() #     ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy

3.1K61

Python建立ssh连接|paramiko实践

之前写了一篇Python调用系统命令的六种方法,但是执行linux命令时,需要在本地运行,如果想远程执行命令,就要用到另一个库paramiko。...安装 pip install paramiko 项目地址: https://github.com/paramiko/paramiko 官方文档: http://docs.paramiko.org/ paramiko...允许 look_for_keys=True 是否在~/.ssh中搜索私钥文件,默认为True 允许 compress=False, 是否打开压缩 2.exec_command方法,执行远程命令的方法 exec_command...对象 ssh = paramiko.SSHClient() # 允许连接不在know_hosts文件中的主机 ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy...client = paramiko.SSHClient() #自动添加策略,保存服务器的主机名和密钥信息,如果添加,那么不再本地know_hosts文件中记录的主机将无法连接 client.set_missing_host_key_policy

2.6K51

Python基于模块Paramiko实现SSHv2协议

有了Paramiko以后,我们就可以在Python代码中直接使用SSH协议对远程服务器执行操作,而不是通过ssh命令对远程服务器进行操作。...由于paramiko属于第三方库,所以需要使用如下命令先行安装 :pip install paramiko paramiko包含两个核心组件:SSHClient和SFTPClient。...此为默认选项 exec_command():在远程服务器执行Linux命令的方法。 open_sftp():在当前ssh会话的基础上创建一个sftp会话。...,如果添加,那么不再本地know_hosts文件中记录的主机将无法连接 client.set_missing_host_key_policy(paramiko.AutoAddPolicy())...('/root/.ssh/id_rsa') #实例化SSHClient client = paramiko.SSHClient() #自动添加策略,保存服务器的主机名和密钥信息,如果添加,

1K00

Python: 一周笔记

4. paramiko 主要完成的是登入远程服务器,执行shell命令,远程文件上传、下载操作。...一般你要登入远程服务器进行操作你会怎么做: ssh 登入远程服务器 执行命令 sftp get: 下载文件 sftp put: 上传文件 scp 上传下载文件 paramiko 就是封装了这些操作,提供接口供你使用...Operation", "subject two": "Jobs" } ] } } 为了"曲折"的既完成使用到上述几个模块,又完成目的,代码中做了部门没有实际作用的工作...登入远程服务器:paramiko 将远程数据进行打包操作:shell tar 命令 :data.tar.gz 将远程数据进行下载到本地:sftp 解压指定下载的data.tar.gz 文件到指定目录下:...将远程数据进行打包操作 sshclient 对象执行exec_command()方法 def cmd(self, cmd): cmd = str(cmd) try

59230

巧用Python登陆远程服务器

paramiko和scp是两个Python库,我们可以一起使用它们来自动化我们想要在远程主机上运行的任务,比如重新启动服务、进行更新或获取日志文件。...这样做不一定是灾难性的,但是我遇到过一些实例,其中足够的挂起连接最终会使端口22的入站流量达到最大。...所有这些工作都是由Paramiko客户端内置的exec_command()方法完成的,它接受一个字符串作为命令并执行它: class RemoteClient: ......这部分是为了方便,但也因为Paramiko不会在命令之间运行任何“状态”更改(比如更改目录),所以我们传递给Paramiko的每个命令都应该假定我们是在服务器的根目录下工作的。...SCP和Paramiko库相互补充,使得通过SCP上传非常容易。

2.7K20

基于Python实现前端自动化打包部署

前言 人生苦短,我用python~ 作为一名专职前端开发的我,为了帮助解决目前工作中的一些繁琐的工作(主要是处理 excel 数据),解放程序员双手,前阵子就刚刚入了 python 的坑,毕竟也算是门工具语言...尽快近几年,市面上关于自动化部署的工具层出穷,比如当下比较流行的Jenkins,尽管如此,我还是想自己试一试~ 环境配置 初学乍道,切不可眼高手低,先给自己定个小目标,先实现一个最简单版本。...关于服务器连接这一块,可以使用python的一个第三方模块 paramiko,它实现了SSHv2协议,允许我们直接使用SSH协议对远程服务器执行操作,关于 paramiko 的更多知识和用法,请戳这里...__transport # 调用 exec_command 方法执行命令 stdin, stdout, stderr = ssh.exec_command(command)...我们连接到服务器并尝试调用 linux 中的 df -h 命令查看我们系统文件系统的磁盘使用情况,不出意外的话,会看到控制台返回的信息 ps:命令 df -h 前面的 r 是为了让python解释器转义

76030

paramiko模块,线程,进程

关于paramiko模块 paramiko是基于Python实现的ssh2远程安全连接,支持认证及密钥方式远程执行命令、文件传输,中间ssh代理等 paramiko的安装: 安装好之后,用paramiko...模块写一个简单的远程ssh运行命令,代码如下: 1 import paramiko 2 ssh = paramiko.SSHClient() 3 ssh.set_missing_host_key_policy...(paramiko.AutoAddPolicy()) 4 ssh.connect("192.168.1.23",22,username="root",password="123456") 5 stdin...):是否使用GSS-API认证 ss_kex=False(布尔类型):是否将GSS-API key和用户认证交换 gss_deleg_creds(布尔类型):是否代表包含GSS-API 客户端的凭据 exec_command...AutoAddPolicy:自动添加主机名及主机秘钥到本地HostKeys对象,并将其保存,不依赖load_system_host_keys()的配置,即使~/.ssh/known_hosts不存在也产生影响

1.6K90

安服仔偷懒必备技能之自动化主机检查脚本

二、python实现 先确定下流程,大概的流程就是这四个: 连接服务器 上传脚本 执行脚本 回收数据 最重要的是先连接上去,不然想得再好都没用,连接的话我用是py的paramiko,功能挺强大的...,Paramiko是用py写的一个模块,远程连接到Linux服务器,查看上面的日志状态,批量配置远程服务器,文件上传,文件下载等都可以,除此之外我还用到了pandas,毕竟要批量的话,要去读取表格数据,...先说下SSH连接上去的: ssh = paramiko.SSHClient()ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())ssh.connect...后面我去找了好久,看了下exec_command的说明才知道,原来每次执行完之后,他都会跳回到原目录下面,也就是说,虽然你执行了cd命令,但是他cd过去之后由于这个函数的原因,他会自己回到原来的目录下面...不出意外要出意外了,客户说他那边没lftp这个服务,问我能不能用SCP服务,他们之前用的SCP服务,到手的奶茶突然香了,也行!不就是SCP嘛,开整!也就是改下服务的事情。 #!

58330

python3离线安装第三方库_python手动安装第三方库

python 离线环境安装python第三方库 author: yafeishi tags: AntDB,python python对于运维工作确实方便了很多,但很多比较实用的库都是第三方提供,在...以在离线环境中安装paramiko为例进行说明: paramiko虽然好用,但是依赖很多,多到甚至我想放弃使用,直到找到了pip 离线安装解决依赖的方法,感觉世界又充满了阳光。 大致思路是: 1....在在线环境通过pip将paramiko的依赖下载到一个文件夹里 3. 在离线环境中,通过pip访问该文件夹来解决依赖问题,顺利安装。...在在线环境中,下载paramiko的依赖: pip download -d /tmp/paramiko paramiko [emea 版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。...本站仅提供信息存储空间服务,拥有所有权,承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

1.2K40

Python学习(九)---- python中的线程

上期我们一起学习了python中的类的相关知识 Python学习(八)---- 面向对象类之进阶 今天我们继续深入,一起学习python中的线程相关知识。...目录 1 paramiko模块 2 多线程、多进程 3 使用多线程 threading 1 paramiko模块 堡垒机准备 paramiko:基于ssh用于连接远程服务器并执行相关操作,批量管理 安装...在这种情况下,设置的方式是出口控制,虽然四个线程,但是同一时间只有一个线程在工作。 所以这算是python的一个缺陷,但是也不能说是python的缺陷,是Cpython的缺陷。...该模式通过平衡生产线程和消费线程的工作能力来提高程序的整体处理数据的速度。 什么是生产者消费者模式 生产者消费者模式是通过一个容器来解决生产者和消费者的强耦合问题。...生产者和消费者彼此之间直接通讯,而通过阻塞队列来进行通讯,所以生产者生产完数据之后不用等待消费者处理,直接扔给阻塞队列,消费者找生产者要数据,而是直接从阻塞队列里取,阻塞队列就相当于一个缓冲区,平衡了生产者和消费者的处理能力

86920

如何使用 Python 脚本自动备份华为路由器和交换机的配置?

准备工作 在开始之前,我们需要准备以下工作: 安装 Python:确保您的计算机上安装了 Python 编程语言。...安装 Paramiko 库:Paramiko 是一个 Python 的 SSH 库,用于建立 SSH 连接和执行命令。...导入所需的库 在脚本的开头,导入所需的 Python 库: import paramiko import time 创建 SSH 连接 使用 Paramiko 库,创建一个 SSH 连接对象并建立连接...: ssh = paramiko.SSHClient() ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) ssh.connect('设备...华为、思科、瞻博网络三厂商命令来了 Wi-Fi 6还没用熟,Wi-Fi 7就要来了,性能“高攀起”! 核心交换机的四种关键技术:链路聚合、冗余、堆叠和热备份,真简单!

65420

【实战小项目】python开发自动化运维工具--批量操作主机

1 思路分析 在运维工作中,古老的方式部署环境、上线代码可能都需要手动在服务器上敲命令,不胜其烦。所以,脚本,自动化工具等还是很有必要的。...接下来我们一起看看怎么具体实现。 2 到远程机器上执行命令 到远程机器上执行命令,并返回结果,至少有两种方式:一是用paramiko模块;而是可以建立机器互信,从中控执行ssh命令。...下面我把自己封装好的代码贴一下,是基于paramiko模块封装的,ssh的大家可以自己实现: import paramiko class SSHParamiko(object): err =...(self.rsa) conn = paramiko.SSHClient() conn.set_missing_host_key_policy(paramiko.AutoAddPolicy...后期还可以包装一下,将主机、密码、批量执行的命令写在配置文件中;或再根据需要包装成命令行工具,在日常运维工作中可以适当减少人肉敲命令的繁琐。

1.3K20
领券