使用ansible编译安装运维工具tmux
实验系统:CentOS 6.6_x86_64
实验前提:提前准备好编译环境,防火墙和selinux都关闭
软件介绍:tmux是一个优秀的终端复用软件,类似GNU Screen,但来自于OpenBSD,采用BSD授权。使用它最直观的好处就是,通过一个终端登录远程主机并运行tmux后,在其中可以开启多个控制台而无需再“浪费”多余的终端来连接这台远程主机;当然其功能远不止于此。
软件下载:http://pan.baidu.com/s/1c0i9kf2
一、常规安装
1.安装tmux所需要的依赖:
wget https://sourceforge.net/projects/levent/files/libevent/libevent-2.0/libevent-2.0.22-stable.tar.gz
tar xf libevent-2.0.-stable.tar.gz
cd libevent-2.0.-stable
./configure
make && make install
ln -s /usr/local/lib/libevent-2.0.so.5 /usr/lib64/libevent-2.0.so.5
2.安装tmux软件包:
wget http://iweb.dl.sourceforge.net/project/tmux/tmux/tmux-2.0/tmux-2.0.tar.gz
tar xf tmux-2.0.tar.gz
cd tmux-2.0
./configure --prefix=/usr/local/tmux
make && make install
3.导出二进制文件:
vim /etc/profile.d/tmux.sh
---------------------------------------->
PATH=$PATH:/usr/local/tmux/bin
export PATH
<----------------------------------------
. /etc/profile.d/tmux.sh
4.导出man手册:
vim /etc/man.config
--------------------------------------------->
MANPATH /usr/local/tmux/share/man //增加一行
5.编辑配置文件:
vim ~/.tmux.conf
------------------------------------------>
set -g prefix C-a //设置前缀命令为crtl+a
unbind C-b //解除ctrl+b的绑定
setw -g mode-keys vi //copy-mode将快捷键设置为vi模式
set -g default-terminal "screen-256color" //设置终端颜色为256色
set -g status-utf8 on //开启状态栏的uft-8支持
set-window-option -g mode-mouse on //开启滚屏
6.常用快捷键:



至此,tmux安装完毕了,下面咱们做个拓展实验,使用ansible安装tmux!
二、拓展实验
1.安装ansible并创建yaml文件:
yum -y install ansible
mkdir -pv /root/ansible.roles/roles //创建工作目录
cd /root/ansible.roles
vim tmux.yaml
-------------------------------------------->
- name: install tmux
remote_user: root //运行用户
hosts: tmux //运行这个剧本的主机,后面有定义
roles:
- tmux //规则名称,要与后面创建的文件夹名称相同
2.放入文件:
cd /root/ansible.roles/roles
mkdir -pv tmux/{files,handlers,tasks} //创建与规则同名的文件夹
cp /root/tmux-2.0.tar.gz /root/libevent-2.0.-stable.tar.gz tmux/files/ //将安装包放入
cp /root/.tmux.conf tmux/files/ //将配置文件放入
3.编写主yaml文件:
vim /root/ansible.roles/roles/tmux/tasks/main.yaml
------------------------------------------------------>
- name: copy libevent package
copy: src=libevent-2.0.22-stable.tar.gz dest=/root
- name: copy tmux package
copy: src=tmux-2.0.tar.gz dest=/root
- name: copy conf
copy: src=.tmux.conf dest=/root
- name: run script
script: tmux.sh
4.编写tmux.sh脚本:
vim /root/ansible.roles/roles/tmux/files/tmux.sh
---------------------------------------------------------------->
#!/bin/bash
# # Install libevent
cd && cd
tar xf libevent-2.0.-stable.tar.gz
cd libevent-2.0.-stable
./configure
make && make install
ln -s /usr/local/lib/libevent-2.0.so. /usr/lib64/libevent-2.0.so. # Install tmux
cd && cd
tar xf tmux-2.0.tar.gz
cd tmux-2.0
./configure --prefix=/usr/local/tmux
make && make install # Extra Operation
touch /etc/profile.d/tmux.sh
echo 'PATH=$PATH:/usr/local/tmux/bin' > /etc/profile.d/tmux.sh
echo 'export PATH' >> /etc/profile.d/tmux.sh
echo 'MANPATH /usr/local/tmux/share/man' >> /etc/man.config
. /etc/profile.d/tmux.sh
<----------------------------------------------------------------
chmod +x /root/ansible.roles/roles/tmux/files/tmux.sh
5.加入要安装的主机:
vim /etc/ansible/hosts
---------------------------------------------->
[tmux] //对应tmux.yaml文件里的名称
192.168.19.76 ansible_ssh_pass=password //主机IP+登录密码
6.尝试使用:
cd /root/ansible.roles/
ansible-playbook tmux.yaml

至此,实验全部完成。使用中发现/etc/profile.d/tmux.sh这个文件不能被正常source,所以可能需要手动执行一下 . /etc/profile.d/tmux.sh 。由于时间紧迫,所以过程还不是很完善,脚本也并不严谨,没有一些条件判断等等,而且安装主机必须要有编译环境。大家如果有需要可以自行扩展修改,我已经把ansible文件夹上传至共享,大家可以随意下载使用。最后,感谢大家的收看,谢谢!如有问题,请联系QQ:82800452.
使用ansible编译安装运维工具tmux的更多相关文章
- sshpass做秘钥分发,ansible做自动化运维工具
最近公司机器的增多,顺便还要上报表系统,考虑到服务器越来越多,手工的管理显得越来的越吃力,所以打算推进公司自动化运维工具的使用. 推进的过程中,一步一个坑踩过来的.由于公司之前未运用过自动化运维工具, ...
- Nexus 安装运维手册
1. Nexus 安装与配置 1.1 下载Nexus 登录https://www.sonatype.com/download-oss-sonatype,下载最新的Nexus版本. 我这里使用的是nex ...
- 自动化运维工具——ansible安装入门(一)
一.简介 现如今有很多运维自动化的工具,如:Ansible.Puppet.saltStack.Fabric.chef.Cfengine 1. Ansible介绍 Ansible 是由 Cobbler与 ...
- 自动化运维工具Ansible详细部署 (转载)
自动化运维工具Ansible详细部署 标签:ansible 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://sofar.blog. ...
- 自动化运维工具之ansible
自动化运维工具之ansible 一,ansible简介 ansible是新出现的自动化运维工具,基于Python开发,集合了众多运维工具(puppet.cfengine.chef.func.fab ...
- 自动化运维工具Ansible详细部署
本文来源:http://sofar.blog.51cto.com/353572/1579894/ 前言 一个由 Python 编写的强大的配置管理解决方案.尽管市面上已经有很多可供选择的配置管理解决方 ...
- 企业级自动化运维工具应用实战-ansible
背景 公司计划在年底做一次大型市场促销活动,全面冲刺下交易额,为明年的上市做准备.公司要求各业务组对年底大促做准备,运维部要求所有业务容量进行三倍的扩容,并搭建出多套环境可以共开发和测试人员做测试,运 ...
- 项目实战10.1—企业级自动化运维工具应用实战-ansible
实战环境: 公司计划在年底做一次大型市场促销活动,全面冲刺下交易额,为明年的上市做准备.公司要求各业务组对年底大促做准备,运维部要求所有业务容量进行三倍的扩容,并搭建出多套环境可以共开发和测试人员做测 ...
- 自动化运维工具Ansible介绍
一个由 Python 编写的强大的配置管理解决方案.尽管市面上已经有很多可供选择的配置管理解决方案,但他们各有优劣,而 ansible 的特点就在于它的简洁. 让 ansible 在主流的配置管理系统 ...
随机推荐
- 在ASP.NET Core中怎么使用HttpContext.Current
一.前言 我们都知道,ASP.NET Core作为最新的框架,在MVC5和ASP.NET WebForm的基础上做了大量的重构.如果我们想使用以前版本中的HttpContext.Current的话,目 ...
- [Q&A] 应用程序清单生成失败
当在 Silverlight 客户端属性里(如下图),添加"允许在浏览器外运行应用程序"和"在浏览器内运行时需要提升的信任"时, 图1 目录下会自动生成如下两个 ...
- centos6.x 安装pylucene (20161027改)
一.说明 安装环境 centos6.6 (64位) python2.7.10 (升级系统默认python版本的方法参见在CentOS 6.5上安装python2.7) 约定 工作目录假定为当前用户的H ...
- 浅谈SQL Server中的三种物理连接操作
简介 在SQL Server中,我们所常见的表与表之间的Inner Join,Outer Join都会被执行引擎根据所选的列,数据上是否有索引,所选数据的选择性转化为Loop Join,Merge J ...
- sqlHelper做增删改查
1.把数据库里面的数据显示出来 sqlHelper怎么用:[网上可以下载,需要可以找楼主要] 1.拷贝到项目,修改它的命名空间等于当前项目名称 2.数据库的连接信息,用户名,密码,登录方式等 < ...
- java堆和栈的区别
java 的内存分为两类,一类是栈内存,一类是堆内存.栈内存是指程序进入一个方法时,会为这个方法单独分配一块私属存储空间,用于存储这个方法内部的局部变量,当这个方法结束时,分配给这个方法的栈会释放,这 ...
- 【夯实Mysql基础】mysql explain执行计划详解
原文地址 1).id列数字越大越先执行,如果说数字一样大,那么就从上往下依次执行,id列为null的就表是这是一个结果集,不需要使用它来进行查询. 2).select_type列常见的有: A ...
- GIS管网项目-flex/java
开发语言是flex.java,开发平台是myeclise.eclise,后台数据库是oracel或sqlserver,开发接口是arcgis api for flex,提供以下的功能: 1.应急指挥: ...
- GitHub学习心得之 分支操作
目录 前言 1. 一般的push和pull 2. 分支操作 前言 本文对Github的分支操作进行了总结, 主要基于以下文章: http://blog.csdn.net/guang11cheng/ar ...
- Windows TCP连接数限制解决
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters" /v "M ...