# 测试环境是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. 解压安装Cacti在apache中的补充

    如果你不是安装 Cacti 到 Apache 默认的网络目录文件夹位置,那么在 /etc/httpd/conf.d 中新增配置文件 cacti.conf,并且按如下内容编辑.设置 /your/cact ...

  2. nuxt 项目安装及环境配置

    babel篇 在package.json中添加--exec babel-node 如果需要编译es6,我们需要设置presets包含es2015,也就是预先加载es6编译的模块. 如果需要编译es7, ...

  3. linux笔记(一)

    linux 开源镜像网址:http://mirrors.163.com pwd : 展示当前所在的目录的绝对路径 cd : 切换到某个路径  cd 命令,是 Change Directory 的缩写, ...

  4. 记一次oom问题排查

    大家好,我是大彬~ 今天给大家分享最近出现的OOM问题. 上周五早上,测试同学反馈测试环境的子系统服务一直超时,请求没有响应. 收到这个问题之后,我有点纳闷,最近这个系统也没有改动代码逻辑,怎么会突然 ...

  5. winform GDI+ 抗锯齿

    graphics.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.AntiAlias;

  6. 【解决了一个小问题】如何展示VictoriaMetrics组件上报的bucket数据

    VM体系还真的是不一(he)样(qun), 它上报的监控数据长这样: vmagent_remotewrite_block_size_rows_bucket{vmrange="2.448e+0 ...

  7. HttpServletResponse接口详解

    在 Servlet API 中,定义了一个 HttpServletResponse 接口,它继承自 ServletResponse 接口.HttpServletResponse 对象专门用来封装 HT ...

  8. K8S配置多集群访问

    中文官档: http://docs.kubernetes.org.cn/823.html 背景:我们通过会有多个k8s集群,例如集群(cn-k8s)和集群(jp-k8s),那个就需要有一台服务器可以同 ...

  9. Vue之 css3 样式重置 代码

    reset.css @charset "utf-8";html{background-color:#fff;color:#000;font-size:12px} body,ul,o ...

  10. servlet单例模式以及servlet的请求流程

    ​ 目录 一.servlet 单例模式: 二.servlet的请求流程: ★ 流程: ★ 详细过程如下: 一.servlet 单例模式: tomcat服务器,通过Java的反射机制来自动调用servl ...