# 测试环境是suse 12 sp3的系统,机器都是内网使用的,安装ansible真的很难顶
# 测试环境使用的python版本:2.7.13-27
# 此脚本只在本人测试环境成功,其他环境,需要选择合适的版本(suse装ansible的版本真的很烦人)
# 需要提前准备的内容:机器内需要有 gcc 和 make (编译yaml目录的时候,需要用到的)
# 需要注意的版本:ansible依赖python-devel包,如果环境没有,需要先准备和自己环境可用的python-devel
# tar包下载地址:(可以根据提示的报错,修改url后缀的版本来获取相应的tar包)
# https://pypi.python.org/packages/source/p/pycrypto/pycrypto-2.6.2.tar.gz
# http://pyyaml.org/download/libyaml/yaml-0.1.5.tar.gz
# https://pypi.python.org/packages/source/P/PyYAML/PyYAML-3.11.tar.gz
# https://pypi.python.org/packages/source/M/MarkupSafe/MarkupSafe-1.1.1.tar.gz
# https://pypi.python.org/packages/source/J/Jinja2/Jinja2.11.2.tar.gz
# https://pypi.python.org/packages/source/e/ecdsa/ecdsa-0.11.tar.gz
# https://pypi.python.org/packages/source/p/paramiko/paramiko-1.15.1.tar.gz
# https://pypi.python.org/packages/source/s/setuptools/setuptools-11.3.tar.gz
# https://releases.ansible.com/ansible/ansible-2.9.7.tar.gz
#!/bin/env bash
# system: suse 12
# use : offline install ansible
# time : 2020-11-17
# from : 半癫
set -e PWD=$(cd `dirname $0`; pwd)
pydev=$(rpm -qa python-devel | wc -l) devel_install(){
if [ $pydev -ge 1 ];
then
echo 'python-devel is installed'
else
echo 'starting install python-devel'
cd $PWD/packages/ && rpm -ivh python-devel-2.7.13-27.1.x86_64.rpm
if [ $pydev -ge 1 ];
then
echo 'python-devel install successful'
else
echo 'python-devel install failed'
fi
fi
} pycrypto_install(){
cd $PWD/packages/pycrypto-yb-2.6.2a103/ && \
python setup.py install && \
cd -
} yaml_install(){
cd $PWD/packages/yaml-0.1.5/ && \
./configure --prefix=/usr/local && \
make --jobs=`grep processor /proc/cpuinfo |wc -l` && \
make install && \
cd -
} pyyaml_install(){
cd $PWD/packages/PyYAML-3.11/ && \
python setup.py install && \
cd -
} setuptools_install(){
cd $PWD/packages/setuptools-11.3/ && \
python setup.py install && \
cd -
} markupsafe_install(){
cd $PWD/packages/MarkupSafe-1.1.1/ && \
python setup.py install && \
cd -
} jinja2_install(){
cd $PWD/packages/Jinja2-2.11.2/ && \
python setup.py install && \
cd -
} ecdsa_install(){
cd $PWD/packages/ecdsa-0.11/ && \
python setup.py install && \
cd -
} paramiko_install(){
cd $PWD/packages/paramiko-1.15.1 && \
python setup.py install && \
cd -
} ansible_install(){
cd $PWD/packages/ansible-2.9.7/ && \
python setup.py install && \
cd -
} ansible_example(){
mkdir $PWD/ansible
cp /etc/ansible/ansible.cfg $PWD/ansible
cp /etc/ansible/hosts $PWD/ansible
} main(){
devel_install
pycrypto_install
yaml_install
pyyaml_install
setuptools_install
markupsafe_install
jinja2_install
ecdsa_install
paramiko_install
ansible_install
ansible_example
} main

suse 12 sp3 利用shell脚本离线编译安装ansible的更多相关文章

  1. ansible配合shell脚本批量编译安装python3.6.6

    [root@node1:/etc]# tree /etc/ansible/ /etc/ansible/ ├── ansible.cfg ├── hosts ├── python.yml └── rol ...

  2. 利用shell脚本或者php移动某个文件夹下的文件到各自的日期组成的目录下

    背景是这样的:网站一开始访问量比较小,大家就把所有的图片文件上传到一个目录下(比如是/data/images/).后来访问量大了,图片也多了,这样就影响读取效率.所以有个这样的需求,把这些个图片文件移 ...

  3. 利用shell脚本实现计划任务功能 V1.2

    2013.05.10  mytask 1.2 主程序休眠时间分成若干小的时间片断分段休眠,避免长时间的休眠不能及时响应系统信号. 2013.05.07 mytask 1.1 昨天发布了mytask1. ...

  4. 利用shell脚本去备份幸运28源码搭建下载所指定的数据库

    #! /bin/bash幸运28源码搭建下载Q[115288oo99]logintool=/home/yx/server/mysql/mysql/bin/mysqldumptool=/home/yx/ ...

  5. 利用shell脚本个性化运行jar任务

    利用shell脚本可以个性化运行jar任务,废话不多说,直接上代码: #!/bin/bash APP_PATH=/root/bigdata/jars/data_migration_from_sqlse ...

  6. 利用shell脚本将Oracle服务器中数据定时增量刷新到ftp服务器中

    现有需求:将oracle数据库中的数据准实时同步至某ftp服务器中,以便前端应用能定时从ftp服务器目录中取增量数据 方法:将加工脚本写为存储过程,然后利用shell脚本执行该存储过程并将增量数据导出 ...

  7. shell编程系列24--shell操作数据库实战之利用shell脚本将文本数据导入到mysql中

    shell编程系列24--shell操作数据库实战之利用shell脚本将文本数据导入到mysql中 利用shell脚本将文本数据导入到mysql中 需求1:处理文本中的数据,将文本中的数据插入到mys ...

  8. 16、编译安装ansible

    16.1.python版本说明: Ansible是一种批量部署工具,现在运维人员用的最多的三种开源集中化管理工具有:puppet,saltstack,ansible,各有各的优缺点, 其中saltst ...

  9. 利用shell脚本统计文件中出现次数最多的IP

    比如有如下文件test.txt 1  134.102.173.43 2  134.102.173.43 3  134.102.171.42 4  134.102.170.9 要统计出现次数最多的IP可 ...

随机推荐

  1. 实验 2 :Mininet 实验 —— 拓扑的命令脚本

    实验2: Mininet 实验--拓扑的命令脚本 一.实验目的 掌握 Mininet 的自定义拓扑生成方法:命令行创建.Python 脚本编写 二 .实验任务 通过使用命令行创建.Python 脚本编 ...

  2. NOSQL数据库之MongoDB

    一.NoSQL概述 如今,大多数的计算机系统(包括服务器.PC.移动设备等)都会产生庞大的数据量.其实,早在2012年的时候,全世界每天产生的数据量就达到了2.5EB(艾字节,​).这些数据有很大一部 ...

  3. xray与burp联动被动扫描

    最近也是刚实习了几天,看见带我的那位老哥在用xray,而且贼溜,所以我想写几篇关于xray的使用的文章 0x00 xray建立监听 在实际测试过程中,除了被动扫描,也时常需要手工测试.这里使用 Bur ...

  4. Keil MDK STM32系列(四) 基于抽象外设库HAL的STM32F401开发

    Keil MDK STM32系列 Keil MDK STM32系列(一) 基于标准外设库SPL的STM32F103开发 Keil MDK STM32系列(二) 基于标准外设库SPL的STM32F401 ...

  5. 《剑指offer》面试题27. 二叉树的镜像

    问题描述 请完成一个函数,输入一个二叉树,该函数输出它的镜像. 例如输入:      4    /   \   2     7  / \   / \ 1   3 6   9 镜像输出:      4 ...

  6. 创建app子应用,配置数据库,编写模型,进行数据迁移

    文章目录 web开发django模型 1.创建app子应用 2.配置子应用 3.使用 4.配置子应用管理自已的路由 django数据库开发思维与ORM 1.创建数据库 2.配置数据库 3.安装pymy ...

  7. Jquery操作文本内容(三个方法:html()、text()、var())

    Jquery操作文本内容(三个方法:html().text().var()) 一.html()获取和设置文本内容和标签 1.获取标签里的结构和内容 $("ul").html() / ...

  8. 【HarmonyOS】【JS】鸿蒙Js camera怎么拍照并使用image显示出来

    官网中有描述camera组件功能界面属性介绍,但是官网没有具体的demo让我们感受拍照的功能,今天写一篇demo来完善一下拍照的功能 demo 功能如下 第一步首先进行拍照功能 第二步 进行js页面跳 ...

  9. 谷歌浏览器和火狐浏览器如何查看HTTP协议

    谷歌浏览器和火狐浏览器如何查看HTTP协议 谷歌浏览器查看HTTP协议 火狐浏览器查看HTTP协议

  10. /etc/crontab和crontab -e的区别

    (1) /etc/crontab是系统级别的crontab,系统的设置等,这种方法只有root用户能用 crontab -e是用户级的crontab,会被写到 /var/spool/cron 目录下, ...