Python编程:fabric实现SSH远程管理服务器

简介: Python编程:fabric实现SSH远程管理服务器

fabric 可以很轻松的实现 SSH链接

安装

pip install fabric

查看版本

$ fab --version
Fabric 2.4.0
Paramiko 2.4.1
Invoke 1.2.0

脚本运行

# 执行本机命令
import os
os.system("echo 'hi'")
# 执行远程命令
from fabric import Connection
conn = Connection("root@remote")
conn.run("cd /demodir && bash deploy.sh")
conn.close()

命令行运行

编写任务 fabfile.py

# -*- coding: utf-8 -*-
from fabric import task, Connection
@task
def local_list(ctx):
  # 执行本机命令, 会有环境异常,试试 os.system(command)
    ctx.run("ls")
@task
def remote_list(ctx):
  # 链接远程服务器执行命令 
    conn = Connection("root@localhost", connect_kwargs={"password": "123456"})
    conn.run("ls")
    conn.close()

运行任务

$ fab -l
Available tasks:
  local-list
  remote-list
$ fab local-list
fabfile.py
$ fab remote-list
change_url.py
change_url_raw.py
...

相关资料

网站: https://www.fabfile.org/index.html

github: https://github.com/fabric/fabric

英文文档2.4: http://docs.fabfile.org/en/2.4/index.html#

英文文档1.14: http://docs.fabfile.org/en/1.14/index.html

中文文档(2016年版本较低):https://fabric-chs.readthedocs.io/zh_CN/chs/index.html


参考“No idea what something is!” after running fabric2



相关文章
|
6天前
|
Docker Python 容器
Docker——阿里云服务器使用Docker部署python项目全程小记
本文记录了我在阿里云服务器上使用Docker部署python项目(flask为例)的全过程,在这里记录和分享一下,希望可以给大家提供一些参考。
|
3月前
|
弹性计算 安全 开发工具
灵码评测-阿里云提供的ECS python3 sdk做安全组管理
批量变更阿里云ECS安全组策略(批量变更)
|
4月前
|
缓存 监控 Linux
Python 实时获取Linux服务器信息
Python 实时获取Linux服务器信息
|
5月前
|
Python
Socket学习笔记(二):python通过socket实现客户端到服务器端的图片传输
使用Python的socket库实现客户端到服务器端的图片传输,包括客户端和服务器端的代码实现,以及传输结果的展示。
237 3
Socket学习笔记(二):python通过socket实现客户端到服务器端的图片传输
|
5月前
|
JSON 数据格式 Python
Socket学习笔记(一):python通过socket实现客户端到服务器端的文件传输
本文介绍了如何使用Python的socket模块实现客户端到服务器端的文件传输,包括客户端发送文件信息和内容,服务器端接收并保存文件的完整过程。
291 1
Socket学习笔记(一):python通过socket实现客户端到服务器端的文件传输
|
4月前
|
监控 Kubernetes 安全
如何设置一个有效的远程管理工具来简化服务器的维护工作?
如何设置一个有效的远程管理工具来简化服务器的维护工作?
|
5月前
|
IDE 网络安全 开发工具
IDE之pycharm:专业版本连接远程服务器代码,并配置远程python环境解释器(亲测OK)。
本文介绍了如何在PyCharm专业版中连接远程服务器并配置远程Python环境解释器,以便在服务器上运行代码。
916 0
IDE之pycharm:专业版本连接远程服务器代码,并配置远程python环境解释器(亲测OK)。
|
6月前
|
安全 Python
使用Python实现简单的Web服务器
使用Python实现简单的Web服务器
154 6
|
5月前
|
网络协议 Python
Python创建一个TCP服务器
Python创建一个TCP服务器
44 0
|
6月前
|
监控 Kubernetes 安全
如何设置一个有效的远程管理工具来简化服务器的维护工作?
如何设置一个有效的远程管理工具来简化服务器的维护工作?