zabbix是一个多语言监控系统,界面显示由对应的语言下的frontend.mo控制。当前对中文的翻译不完全,如下图

如果我们需要自己优化,将此翻译成中文,那么你需要修改zh_CN下的frontend.po,然后make_mo.sh创建frontend.mo。下面以

为例,介绍zabbix界面的汉化过程。

汉化例子

1、确认要修改的po文件的位置
[root@zabbix ~]# find / -name frontend.po
/root/cn_LC_MESSAGES/frontend.po
/usr/share/zabbix/locale/bg/LC_MESSAGES/frontend.po
/usr/share/zabbix/locale/cs/LC_MESSAGES/frontend.po
/usr/share/zabbix/locale/de/LC_MESSAGES/frontend.po
/usr/share/zabbix/locale/el/LC_MESSAGES/frontend.po
/usr/share/zabbix/locale/en_US/LC_MESSAGES/frontend.po
/usr/share/zabbix/locale/es/LC_MESSAGES/frontend.po
/usr/share/zabbix/locale/fa/LC_MESSAGES/frontend.po
/usr/share/zabbix/locale/fi/LC_MESSAGES/frontend.po
/usr/share/zabbix/locale/fr/LC_MESSAGES/frontend.po
/usr/share/zabbix/locale/hu/LC_MESSAGES/frontend.po
/usr/share/zabbix/locale/id/LC_MESSAGES/frontend.po
/usr/share/zabbix/locale/it/LC_MESSAGES/frontend.po
/usr/share/zabbix/locale/ja/LC_MESSAGES/frontend.po
/usr/share/zabbix/locale/ko/LC_MESSAGES/frontend.po
/usr/share/zabbix/locale/lt/LC_MESSAGES/frontend.po
/usr/share/zabbix/locale/lv/LC_MESSAGES/frontend.po
/usr/share/zabbix/locale/nl/LC_MESSAGES/frontend.po
/usr/share/zabbix/locale/pl/LC_MESSAGES/frontend.po
/usr/share/zabbix/locale/pt_BR/LC_MESSAGES/frontend.po
/usr/share/zabbix/locale/pt_PT/LC_MESSAGES/frontend.po
/usr/share/zabbix/locale/ro/LC_MESSAGES/frontend.po
/usr/share/zabbix/locale/ru/LC_MESSAGES/frontend.po
/usr/share/zabbix/locale/sk/LC_MESSAGES/frontend.po
/usr/share/zabbix/locale/sv/LC_MESSAGES/frontend.po
/usr/share/zabbix/locale/tr/LC_MESSAGES/frontend.po
/usr/share/zabbix/locale/uk/LC_MESSAGES/frontend.po
/usr/share/zabbix/locale/vi/LC_MESSAGES/frontend.po
/usr/share/zabbix/locale/zh_CN/LC_MESSAGES/frontend.po
/usr/share/zabbix/locale/zh_TW/LC_MESSAGES/frontend.po
/usr/share/zabbix/locale/ka/LC_MESSAGES/frontend.po
2、添加中文内容到frontend.po
[root@zabbix LC_MESSAGES]# vim frontend.po

#: include/blocks.inc.php:486
msgid "Number of items (enabled/disabled/not supported)"
msgstr ""

修改为

#: include/blocks.inc.php:486
msgid "Number of items (enabled/disabled/not supported)"
msgstr "监控项(启用/禁用/不支持)"
3、创建.mo文件
/usr/share/zabbix/locale/make_mo.sh
4、刷新界面,发现已经变成了中文

po文件编辑工具推荐---Poedit

使用vim编辑frontend.po是一种办法,也可以使用专门的图形化工具Poedit对po文件进行编辑、编译。该工具具有翻译建议
2、
将生成的frontend.mo替换掉/usr/share/zabbix/locale/zh_CN/LC_MESSAGES下的frontend.po 即可。

gettext工具简介

zabbix提供的脚本 /usr/share/zabbix/locale/make_mo.sh 实现语言文件po到mo的转换,其实/usr/share/zabbix/locale/make_mo.sh调用的就是gettext中的gettext。

[root@zabbix locale]# cat /usr/share/zabbix/locale/make_mo.sh
#!/bin/bash while read pofile; do
msgfmt --use-fuzzy -c -o ${pofile%po}mo $pofile
done < <(find $(dirname $0) -type f ! -wholename '*/.svn*' -name '*.po')

gettext工具下载地址:http://gnuwin32.sourceforge.net/packages/gettext.htm

gettext包中包含了msgunfmt.exe、msgfmt.exe 等文件,可以实现语言文件po和mo的互相转换

根据po生成mo

重新生成mo文件
cd C:\Software\GetText\bin
msgfmt.exe C:\Users\xqzt\Desktop\当前\frontend.po -o C:\Users\xqzt\Desktop\当前\frontend.mo

根据mo生成po

cd  C:\Software\GetText\bin
msgunfmt.exe C:\Users\xqzt\Desktop\frontend.mo -o C:\Users\xqzt\Desktop\frontend.po

zabbix 界面翻译不完全的处理的更多相关文章

  1. openerp 中文乱码及界面翻译不全

    openerp中文报表乱码问题,即是字体问题,环境是ubuntu 12.04 openerp 6.1, deb all in one安装方式 一.cd usr/share/fonts/truetype ...

  2. Qt实现多国语言(即界面翻译)可实时进行切换

    .在工程文件添加 TRANSLATIONS = debug/lang_English.ts \ debug/lang_Chinese.ts .在需要翻译的地方用上tr 例如:setText(tr(&q ...

  3. 使用Zabbix监控Oracle数据库

    Orabbix介绍 监控Oracle数据库我们需要安装第三方提供的Zabbix插件,我们先测试比较有名的Orabbix,http://www.smartmarmot.com/product/orabb ...

  4. zabbix完整安装

    一.nginx安装 1.必要软件准备: 为了支持rewrite功能,我们需要安装pcre: yum install pcre-* 需要ssl的支持,如果不需要ssl支持,请跳过这一步: yum ins ...

  5. zabbix 自定义探索规则发现服务器上面的kvm虚拟机和对应的网卡

    安装完zabbix服务器之后 只有两个探索规则模版,挂载点探索和网卡探索 场景描述:想使用zabbix监控kvm虚拟机的网卡的流量情况, 获取虚拟机和网卡对应关系 虚拟机 S-1 virsh domi ...

  6. (13)odoo翻译

    -------------------更新时间:15:52 2016-09-28 星期三 增加模型名翻译17:26 2016-05-20 星期五17:58 2016-05-17 星期二12:14 20 ...

  7. CentOS 6.4搭建zabbix

    系统环境:CentOS 6.4 64bit Zabbix版本:zabbix 2.2.3 前提条件:已安装好LNMP环境 一.服务端: 1.  下载zabbix安装包zabbix-2.2.3.tar.g ...

  8. 编译安装zabbix

    1. 说明:本例用源码包来安装zabbix,但是zabbix的后台数据库在这里选择mysql,然而mysql的安装方式不在选择源码了,而是选择已经编译好的通用linux包(tar包) zabbix源码 ...

  9. 添加zabbix自动发现(监控多tomcat实例)

    说明 何为自动发现?首先我们监控多tomcat实例,如果一个个实例地添加或许可以完成当前需求.但是日后随着实例的增多,再手动一个个去添加就十分不方便了.这时候需要自动发现这个功能,来帮助我们自动添加监 ...

随机推荐

  1. 043 关于 loadrunner 返回 http 500 错误解决思路

    这个支持项目中,总是出现500的问题,后来发现是redis总是崩掉. 后来,在压力测试,500的问题,又开始不断出现,虽然不是我自己处理的,但是没少吃苦头. 看了这篇文章,感觉说的还是很有道理,如何来 ...

  2. There is no setter for property named 可能产生的原因!

     There is no setter for property named 'operateIP ' in 'class com.chinaunicom.wsp.facade.entity.User ...

  3. POJ 3061 Subsequence【二分答案】||【尺取法】

    <题目链接> 题目大意: 给你一段长度为n的整数序列,并且给出一个整数S,问你这段序列中区间之和大于等于S的最短区间长度是多少. 解题分析:本题可以用二分答案做,先求出前缀和,然后枚举区间 ...

  4. Vue-Router 学习笔记

    1:当router-link组件默认渲染成一个a标签,通过to属性指定目标地址,当对应的路由匹配成功,会自动给激活的标签设置class属性值 API 1:to:表示目标路由的链接,当被点击时,内部会立 ...

  5. 使用 universalimageloader 缓存图片的配置类及使用方法

    0.gradle 配置 dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) testCompile 'junit:juni ...

  6. YOLO系列:YOLO v3解析

    本文好多内容转载自 https://blog.csdn.net/leviopku/article/details/82660381 yolo_v3 提供替换backbone.要想性能牛叉,backbo ...

  7. UVA 814 The Letter Carrier's Rounds

    大致翻译: 对于电子邮件应用程序,您需要描述发生在成对mta之间的基于smtp的通信.发送方 的用户代理向发送消息传输代理(MTA)提供格式化的消息.发送MTA使用SimpleMail 传输协议(SM ...

  8. sql语句(一)— —判断是否有这条数据的优化

    今天发现一个业务上的存储过程写的不够完善,和老板反应后,老板说你来完善吧,我:苦瓜脸~.说实话,我对SQL语句的熟练程度真的是不提也罢[捂脸],大概的判断流程我知道,但是真的让我自己写,还真得上网查查 ...

  9. [Win] Win8权限机制导致R安装包失败

    在Rstudio安装tidyselect的时候,提示 ERROR: compilation failed for package ‘tidyselect’ 搜了一下,在github上找到tidysel ...

  10. 1171 Big Event in HDU 01背包

    题目:http://acm.hdu.edu.cn/showproblem.php?pid=1171 题意:把商品分成两半,如不能均分,尽可能的让两个数相接近.输出结果:两个数字a,b且a>=b. ...