EasyXMS(Python)

EasyXMS

 EasyXMS是一个用于批量管理Linux/Unix服务器的简易系统,
 如:多线程批量执行命令、多线程批量上传文件等功能.

项目主页

http://git.oschina.net/leedays/EasyXMS 到项目主页下载最新的版本

有什么优势?

    1.简单易用
    2.轻量级,只需要一个脚本文件,不需要安装Client端
    3.安装部署快,一键安装所需的环境

一.主要功能

    1.批量执行命令
    2.批量上传文件
    3.记录每次输入的命令到文件
    4.记录每次执行命令的结果到文件

二.运行环境

    1.Python2.7
        下载地址:http://www.python.org

    2.easy_install 工具(是Python安装模块的一个工具,像yum,
    可以自动解决依赖)
        下载地址: http://peak.telecommunity.com/dist/ez_setup.py

    3.PyCrypto 2.1+ 模块(PyCrypto是使用Python编写的加密工具包)
        下载地址:https://www.dlitz.net/software/pycrypto/    
    
    4.paramiko 模块(是用Python编写的支持SSH协议的模块)
        使用easy_install 进行安装

三.环境安装

点击查看依赖软件包安装过程

也可以使用项目中的  one_key_install_paramiko.sh  
Shell脚本一键安装环境
请使用  source 脚本名  的方式来执行脚本

四.运行过程中产生的文件

在脚本的执行过程中,默认是会在当前目录下生成以下文件

    1.server.conf
        该文件是用于存储各个服务器的连接信息如 
    IP地址:端口:用户名:密码,存储的信息是经过简单的加密,当然使用的可逆的加密算法.
        如下所示每行代表一个IP信息:
        MTkyLjE2OC4xMDAuMjAxOjIyOnJvb3Q6MTIzNDU2
        MTkyLjE2OC4xMDAuMjAyOjIyOnJvb3Q6MTIzNDU2    2.paramiko.log
        该文件是paramiko模块在运行过程中产生的日志文件    3.command_history.log
        该文件是记录执行过的命令    4.command_result_history.log
        该文件是记录执行过的命令的结果

五.怎么执行脚本?

1.使用 python 脚本名 方式来执行(推荐使用这种方式)

    python EasyXMS.py

2.使用 脚本的路径来执行,注意加上可执行权限

    ./EasyXMS.py

六.操作演示

1.主菜单

输入? 即可获得主菜单帮助

    0 增加服务器的IP信息到配置文件(server.conf 以下都指的是该配置文件)    1 加载一个包含多个服务器IP信息的文件,用于批量添加服务器到    2 列出当前配置文件中存在的服务器    3 从配置文件中删除指定的服务器信息    4 清空配置文件    5 批量执行命令    6 批量上传文件    7 清屏

2.选项 0 增加服务器的IP信息到配置文件

3.选项1 加载一个包含多个服务器IP信息的文件

准备一个文本文件,里面的包含这些内容 IP地址:端口(22端口可以不写):用户名:密码 每行一个 例如:

    192.168.100.204:root:123456
    192.168.100.205:root:123
    192.168.100.206:root:123

4.选项 2 列出当前配置文件中存在的服务器

5.选项 3 从配置文件中删除指定的服务器信息

6.选项 4 清空配置文件

7.选项 5 批量执行命令

8.选项 6 批量上传文件

9.选项 7 清屏

原文发布于微信公众号 - 马哥Linux运维(magedu-Linux)

原文发表时间:2015-04-24

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏刘君君

Redis 集群部署

22630
来自专栏大数据-Hadoop、Spark

Linux更换jdk版本,java -version还是原来的版本JDK还是之前的版本

安装JDK 1.上传jdk-7u80-linux-x64.tar.gz到Linux上 2.解压jdk到/usr/local目录 tar -zxvf jdk-...

47670
来自专栏Jed的技术阶梯

Hbase完全分布式集群搭建

80020
来自专栏我和PYTHON有个约会

04.多版本Python共存的配置和使用

但是由于工作需要,我们的个人PC上可能需要多个python版本共存,应该进行什么样的设置呢,本章内容就针对这个问题进行分析和使用的介绍

10910
来自专栏Python攻城狮

Python开发环境搭建1.下载及安装2.一台PC安装多个python版本3.python2和python3版本共存的配置4. pip安装模块时执行的命令5.给python安装第三方模块6.查看pip

现在python3是趋势,很多公司已经逐渐使用python3,但是对于爬虫来说,我们现在仍需用2.7,所以现在我们安装Python2.7.9版本

11530
来自专栏性能与架构

mysql分布式前端代理 - Amoeba最简配置案例

image.png 主要配置文件说明 1)amoeba.xml 定义客户端如何连接amoeba等基础信息 2)dbServers.xml Amoeba作为数据...

35360
来自专栏青青天空树

linux下安装nodejs及npm

官网下载npm安装包,https://nodejs.org/en/,左边是稳定版右边是最新版。

19720
来自专栏Java技术栈

jstack命令:教你如何排查多线程问题

这是之前的一个死锁案例: 一个多线程死锁案例,如何避免及解决死锁问题? 如程序中发生这样的死锁问题该如何排查呢?我们可以使用java自带的jstack命令进行...

53860
来自专栏进击的君君的前端之路

git

19250
来自专栏Ken的杂谈

CentOS 7 下 GitLab安装部署教程

GitLab一个开源的git仓库管理平台,方便团队协作开发、管理。在GitLab上可以实现完整的CI(持续集成)、CD(持续发布)流程。而且还提供了免费使用的P...

94430

扫码关注云+社区

领取腾讯云代金券