由于工作中需要同时操作多台服务器,这个时候需要批量ssh服务器,而omnitty是一款十分好用的插件。本文主要分两部分,第一部分介绍如何安装omnitty,第二部分简单介绍omnitty的使用。

安装omnitty

首先,在官网上 http://omnitty.sourceforge.net/ 下载安装包,下载rote和omnitty,我下载的版本:

  1. rote-0.2.8.tar.gz
  2. omnitty-0.3.0.tar.gz

下载好后,先进行安装rote:

tar -zxvf rote-0.2.8.tar.gz
cd rote-0.2.8/
./configure
make
make install

再安装omnitty

tar -zxvf omnitty-0.3.0.tar.gz
cd ../omnitty-0.3.0/
./configure
make
make install

安装过程也许会碰到两个错误

  1. Need ncurses to compile librote
  2. libncurses.so.5: error adding symbols: DSO missing from command line while installing omnitty

第一个问题是没有ncurses库,在centos上直接 yum install ncurses-devel 即可;
第二个问题,在make之前需要修改一下omnitty文件夹下的Makefile文件,加上 -lncurses -ltinfo:

omnitty: $(objects)
        $(CC) $(CFLAGS)  -o omnitty $(objects) $(LDFLAGS) $(LIBS) -lncurses  -ltinfo

使用omnitty

1. 创建host文件

将需要批量操作的服务器地址写入到一个文件中,比如写一个remote_ssh.host

2. 在omnitty中打开服务器

在服务器中输入omn就进入到了omnitty中,如下图所示

接下来通过F5我们就可以ssh到多台服务器中

可以看到屏幕的下方出现了 Add 字样,我们在后面加上 @ 符号后接我们最初定义好的服务器地址的host文件回车即可

这个时候服务器都是灰色未激活的,输入F1后键入大写的T,将所有机器激活

激活后,左边机器的ip会由灰色变成绿色,这个时候我们再通过键入F7将单机模式变为广播模式,这样就可以批量操作服务器了。

F1:**操作菜单;
**F2&F3:
用来切换当前显示操作的服务器;
F4:激活当前服务器;
F5:增加服务器地址host文件;
**F6:**从批量操作ip列表中删除服务器ip;
**F7:**广播模式和单机模式的切换;