CactiEZ是一个专门用作运行cactilinux发行版,该版本由Jimmy Conner 制作发行,基于CentOS。安装后只会在系统中安装cactiwebmin所必须的软件,整个系统非常小(安装光盘只有310M),并且已经安装好了一些cacti的插件,如 BackUpDiscoveryFlowviewHaloeMacTrackMonitorNTopRRDCleanReportsTholdToolsUpdate等,其中有些需要用户自己启用才可使用。整个操作系统一旦安装完成,配置好IP后即可使用Cacti,为大家节省了的安装配置时间,只不过需要占用一台服务器。该发行版的主页地址为:[url]http://cactiusers.org/[/url]
   
但是Cacti在显示中文方面在一些页面上会存在乱码,rrdtool不能正常显示中文的问题在CactiEZ中同样没有解决。下面将介绍如何安装CactiEZ和解决中文显示问题的方法。
一:安装CactiEZ
最新的CactiEZ0.4版,可以从该发行版的主页下载。其安装也非常简单,下载光盘ISO镜像文件,刻录光盘后,将光盘插入光驱,启动机器。从光盘启动后进入CactiEZ的安装界面,回车后自动安装整个操作系统。安装大概5-10分钟,安装完成后请取出安装光盘。重起后进入登陆界面,默认系统root用户的密码为:CactiEZ
二:配置服务器的IP地址和域名服务器
默认情况下,CactiEZ是以DHCP自动获取IP地址的。如果您的机器需要配置静态IP的话,使用以下命令:
netconfig
接口配置修改后,必须重启相应的服务,修改的配置才会生效。
输入以下命令:
service network restart
然后用ifconfig查看端口当前的配置,看是否修改成功。
三:汉化Cacti(这里所说的汉化只是让cacti支持中文,还不能做到完全的中文化)
Cacti的汉化主要分两个部分,一个是PHP页面的汉化,一个是rrdtool的汉化。
其实,cactiEZ到了0.4版,应该说已经做的比较好了,默认情况下,直接输入中文,在大部分页面都可以正常显示。但是,在测试中发现还是有一个位置不能正常显示中文,就是Data Source
1.  要汉化Data Source的页面,需要修改data_suorces.php.
具体命令如下:
 Find / -name data_suorces.php  //找到data_suorces.php所在路径
编辑data_suorces.php删除了"htmlentities"函数即可。
修改前:
form_selectable_cell("<a class='linkEditMain' href='data_sources.php?action=ds_edit&id=" . $data_source["local_data_id"] . "'>" . (($_REQUEST["filter"] != "") ? eregi_replace("(" . preg_quote($_REQUEST["filter"]) . ")", "<span style='background-color: #F8D93D;'>\\1</span>", title_trim(htmlentities($data_source["name_cache"]), read_config_option("max_title_data_source"))) : title_trim(htmlentities($data_source["name_cache"]), read_config_option("max_title_data_source"))) . "</a>", $data_source["local_data_id"]);
修改后
form_selectable_cell("<a class='linkEditMain' href='data_sources.php?action=ds_edit&id=" . $data_source["local_data_id"] . "'>" . (($_REQUEST["filter"] != "") ? eregi_replace("(" . preg_quote($_REQUEST["filter"]) . "     )", "<span style='background-color: #F8D93D;'>\\1</span>", title_trim($data_source["name_cache"], read_config_option("max_title_data_source"))) : title_trim($data_source["name_cache"], read_config_option("max_title_data_source"))) . "</a>",      $data_source["local_data_id"]);
至此,php页面的汉化基本完成,在大多数情况下,这样程度的汉化能够满足我们的基本要求。
3.重新编译rrdtools,并安装中文字体包
rrdtool的汉化是保证输出的图形可以正常显示中文。
3.1.
安装编译器和中文字体包
因为现在Cacti还不支持中文,主要是rrdtool在绘图时不能正常现实中文字体,现在我们就要对rrdtool进行编译:
rrdtool
支持中文需要修改源代码,重新编译。但是CactiEZ没有安装c编译器gccC++编译器gcc-c++和中文字体ttfonts-zh_CN,在编译之前,请用yum安装好这些包。
yum install gcc
yum install gcc-c++
yum install ttfonts-zh_CN
(字体默认安装在/usr/share/fonts/
3.2.下载和安装rrdtool依赖库
编译rrdtool需要先编译好依赖库freetype-2.1.10.tar.gzlibart_lgpl-2.3.17.tar.gzlibpng-1.2.10.tar.gz,然后修改rrdtool的源代码文件,再编译rrdtool。整个过程如下:
cd ~
mkdir tmp
cd tmp
wget [url]http://ftp.idilis.ro/mirrors/rrdtool/libs/freetype-2.1.10.tar.gz[/url]
wget [url]http://ftp.idilis.ro/mirrors/rrdtool/libs/libart_lgpl-2.3.17.tar.gz[/url]
wget [url]http://ftp.idilis.ro/mirrors/rrdtool/libs/libpng-1.2.10.tar.gz[/url]
(注,实际编译安装时建议下载较新的源代码包)
tar -zxvf freetype-2.1.10.tar.gz
tar -zxvf libart_lgpl-2.3.17.tar.gz
tar -zxvf libpng-1.2.10.tar.gz
cd freetype-2.1.10
./configure --prefix=/usr ; make ; make install
cd ../libart_lgpl-2.3.17
./configure --prefix=/usr ; make ; make install
cd ../libpng-1.2.10
./configure --prefix=/usr ; make ; make install
cd ../
4.下载rrdtool和修改源文件
wget [url]http://oss.oetiker.ch/rrdtool/pub/rrdtool-1.2.26.tar.gz[/url]
tar -zxvf rrdtool-1.2.26.tar.gz
cd rrdtool-1.2.26/src/
现在修改rrdtool的源文件,需要修改的文件是rrd_graph.c
修改rrd_graph.c
vi rrd_graph.c
删除rrd_graph.c文件中以下两行:
setlocale(LC_TIME,"");
setlocale(LC_CTYPE,"");
在原来setlocale(LC_CTYPE,"")的位置增加以下内容:
setlocale(LC_ALL,"zh_CN.UTF-8");
现在修改完毕,可以开始编译了
5.
编译新的rrdtool
编译前运行
yum install ruby        //安装ruby的语言支持环境,编译rrdtool时需要;不安装,编译也可以通过,最好是安装进去
cd ../
./configure --prefix=/usr --exec-prefix=/usr/rrdtool1.2.26
make
make install
新版本rrdtool的可执行文件安装在/usr/rrdtool1.2.26/bin中,系统原有的在/usr/bin中。需要修改cacti的设置,用新编译好的rrdtool版本替换原有版本。
四:修改Cactirrdtool设置,使其支持中文设备名和图片中输出中文
1
)登陆Cacti,在主页的左边点击setting,选择paths (console>>setting>>paths)
RRDTool Binary Path修改为:/usr/rrdtool1.2.26/bin/rrdtool
还需要修改rrdtool的字体设置。
2
)登陆Cacti,在主页的左边点击setting,选择paths (console>>setting>>paths)
RRDTool Default Font Path修改为:/usr/share/fonts/zh_CN/TrueType/gkai00mp.ttf
点击save
    至此,整个安装汉化过程算是OK了。开始享受Cacti的强大功能吧