实验系统: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的更多相关文章

  1. sshpass做秘钥分发,ansible做自动化运维工具

    最近公司机器的增多,顺便还要上报表系统,考虑到服务器越来越多,手工的管理显得越来的越吃力,所以打算推进公司自动化运维工具的使用. 推进的过程中,一步一个坑踩过来的.由于公司之前未运用过自动化运维工具, ...

  2. Nexus 安装运维手册

    1. Nexus 安装与配置 1.1 下载Nexus 登录https://www.sonatype.com/download-oss-sonatype,下载最新的Nexus版本. 我这里使用的是nex ...

  3. 自动化运维工具——ansible安装入门(一)

    一.简介 现如今有很多运维自动化的工具,如:Ansible.Puppet.saltStack.Fabric.chef.Cfengine 1. Ansible介绍 Ansible 是由 Cobbler与 ...

  4. 自动化运维工具Ansible详细部署 (转载)

    自动化运维工具Ansible详细部署 标签:ansible 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://sofar.blog. ...

  5. 自动化运维工具之ansible

    自动化运维工具之ansible   一,ansible简介 ansible是新出现的自动化运维工具,基于Python开发,集合了众多运维工具(puppet.cfengine.chef.func.fab ...

  6. 自动化运维工具Ansible详细部署

    本文来源:http://sofar.blog.51cto.com/353572/1579894/ 前言 一个由 Python 编写的强大的配置管理解决方案.尽管市面上已经有很多可供选择的配置管理解决方 ...

  7. 企业级自动化运维工具应用实战-ansible

    背景 公司计划在年底做一次大型市场促销活动,全面冲刺下交易额,为明年的上市做准备.公司要求各业务组对年底大促做准备,运维部要求所有业务容量进行三倍的扩容,并搭建出多套环境可以共开发和测试人员做测试,运 ...

  8. 项目实战10.1—企业级自动化运维工具应用实战-ansible

    实战环境: 公司计划在年底做一次大型市场促销活动,全面冲刺下交易额,为明年的上市做准备.公司要求各业务组对年底大促做准备,运维部要求所有业务容量进行三倍的扩容,并搭建出多套环境可以共开发和测试人员做测 ...

  9. 自动化运维工具Ansible介绍

    一个由 Python 编写的强大的配置管理解决方案.尽管市面上已经有很多可供选择的配置管理解决方案,但他们各有优劣,而 ansible 的特点就在于它的简洁. 让 ansible 在主流的配置管理系统 ...

随机推荐

  1. 在ASP.NET Core中怎么使用HttpContext.Current

    一.前言 我们都知道,ASP.NET Core作为最新的框架,在MVC5和ASP.NET WebForm的基础上做了大量的重构.如果我们想使用以前版本中的HttpContext.Current的话,目 ...

  2. [Q&A] 应用程序清单生成失败

    当在 Silverlight 客户端属性里(如下图),添加"允许在浏览器外运行应用程序"和"在浏览器内运行时需要提升的信任"时, 图1 目录下会自动生成如下两个 ...

  3. centos6.x 安装pylucene (20161027改)

    一.说明 安装环境 centos6.6 (64位) python2.7.10 (升级系统默认python版本的方法参见在CentOS 6.5上安装python2.7) 约定 工作目录假定为当前用户的H ...

  4. 浅谈SQL Server中的三种物理连接操作

    简介 在SQL Server中,我们所常见的表与表之间的Inner Join,Outer Join都会被执行引擎根据所选的列,数据上是否有索引,所选数据的选择性转化为Loop Join,Merge J ...

  5. sqlHelper做增删改查

    1.把数据库里面的数据显示出来 sqlHelper怎么用:[网上可以下载,需要可以找楼主要] 1.拷贝到项目,修改它的命名空间等于当前项目名称 2.数据库的连接信息,用户名,密码,登录方式等 < ...

  6. java堆和栈的区别

    java 的内存分为两类,一类是栈内存,一类是堆内存.栈内存是指程序进入一个方法时,会为这个方法单独分配一块私属存储空间,用于存储这个方法内部的局部变量,当这个方法结束时,分配给这个方法的栈会释放,这 ...

  7. 【夯实Mysql基础】mysql explain执行计划详解

    原文地址   1).id列数字越大越先执行,如果说数字一样大,那么就从上往下依次执行,id列为null的就表是这是一个结果集,不需要使用它来进行查询.   2).select_type列常见的有: A ...

  8. GIS管网项目-flex/java

    开发语言是flex.java,开发平台是myeclise.eclise,后台数据库是oracel或sqlserver,开发接口是arcgis api for flex,提供以下的功能: 1.应急指挥: ...

  9. GitHub学习心得之 分支操作

    目录 前言 1. 一般的push和pull 2. 分支操作 前言 本文对Github的分支操作进行了总结, 主要基于以下文章: http://blog.csdn.net/guang11cheng/ar ...

  10. Windows TCP连接数限制解决

    reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters" /v "M ...