Zabbix图表中文乱码(包含Docker安装乱码)
文章github 地址: 点我
最近在看 Zabbix 4.0
版本的官方文档,搭建后图表使用中文发现还是有乱码。之前在 3.0 版本的时候也遇到过,之前有记录。现在针对2个版本的乱码问题的解决做下记录。
Zabbix 4.0 版本
乱码之前的图表中文显示:
解决办法就是上传中文字体库到 Zabbix server
。替换原来图表使用的字体。
解决思路
先找到图表使用的字体,我们在 /usr/share/zabbix/assets/fonts
(yum 安装) 可以看到字体文件 graphfont.ttf
,这个文件就是图表使用的字体。(如果在该路径找不到此字体,请检查版本或者使用 Find 查找)。
[root@localhost fonts]# ls -l /usr/share/zabbix/assets/fonts
total 0
lrwxrwxrwx 1 root root 33 Jun 10 15:17 graphfont.ttf -> /etc/alternatives/zabbix-web-font
我们可以看到该字体是链接到 /etc/alternatives/zabbix-web-font
,我们进行查看 /etc/alternatives/zabbix-web-font
。发现它链接到了 /usr/share/fonts/dejavu/DejaVuSans.ttf
[root@localhost fonts]# ll -h /etc/alternatives/zabbix-web-font
lrwxrwxrwx 1 root root 38 Jun 13 14:58 /etc/alternatives/zabbix-web-font -> /usr/share/fonts/dejavu/DejaVuSans.ttf
[root@localhost fonts]# ls -l /usr/share/fonts/dejavu/DejaVuSans.ttf
-rw-r--r-- 1 root root 720012 Feb 27 2011 /usr/share/fonts/dejavu/DejaVuSans.ttf
也就是我们的图表使用的字体graphfont.ttf
最终是指向 /usr/share/fonts/dejavu/DejaVuSans.ttf
。
理清楚了这个,我们就可以去找一个中文字体,然后上传到 /usr/share/fonts/dejavu/
,然后让 /etc/alternatives/zabbix-web-font
链接到 /usr/share/fonts/dejavu/
里我们上传的新的中文字体。
解决操作
-
找中文字体
我们直接从我们的windows 系统里面找中文字体。默认路径为
C:\Windows\Fonts
。我们使用的是楷体。上传到我们Zabbix server 服务器
的/usr/share/fonts/dejavu/
[root@localhost fonts]# ls -l /usr/share/fonts/dejavu/ total 16800 -rw-r--r-- 1 root root 611212 Feb 27 2011 DejaVuSans-BoldOblique.ttf -rw-r--r-- 1 root root 672300 Feb 27 2011 DejaVuSans-Bold.ttf -rw-r--r-- 1 root root 580168 Feb 27 2011 DejaVuSansCondensed-BoldOblique.ttf -rw-r--r-- 1 root root 631992 Feb 27 2011 DejaVuSansCondensed-Bold.ttf -rw-r--r-- 1 root root 576004 Feb 27 2011 DejaVuSansCondensed-Oblique.ttf -rw-r--r-- 1 root root 643852 Feb 27 2011 DejaVuSansCondensed.ttf -rw-r--r-- 1 root root 345204 Feb 27 2011 DejaVuSans-ExtraLight.ttf -rw-r--r-- 1 root root 611556 Feb 27 2011 DejaVuSans-Oblique.ttf -rw-r--r-- 1 root root 720012 Feb 27 2011 DejaVuSans.ttf -rw-r--r-- 1 root root 11787328 Aug 9 2018 simkai.ttf
楷体也就是
simkai.ttf
-
替换字体为
simkai.ttf
[root@localhost fonts]# rm -f /etc/alternatives/zabbix-web-font [root@localhost fonts]# ln -s /usr/share/fonts/dejavu/simkai.ttf /etc/alternatives/zabbix-web-font
Zabbix 3.0 版本
图表乱码
解决办法和上面大同小异,也是替换字体。
这里说下不同之处。就是 上面的 4.0 版本的 graphfont.ttf
字体路径是在 /usr/share/zabbix/assets/fonts
,而 3.0 版本的字体路径是在 /usr/share/zabbix/fonts
。 其他的操作是一致的。
Zabbix 4.0 Docker 版本 图表乱码问题解决
字体文件存放于镜像 zabbix-web-nginx-mysql
的 /usr/share/zabbix/assets/fonts/
目录下。
docker cp /tmp/SIMKAI.TTF c9e36aa249a3:/usr/share/zabbix/assets/fonts/
然后我们登录到容器里面
# 将后缀名 TTF 改为 ttf
[root@c9e36aa249a3 fonts]# mv /usr/share/zabbix/assets/fonts/SIMKAI.TTF /usr/share/zabbix/assets/fonts/SIMKAI.ttf
# 编辑文件 /usr/share/zabbix/include/defines.inc.php,大约在69行。将 DejaVuSans 更改为 SIMKAI
[root@c9e36aa249a3 fonts]# vi /usr/share/zabbix/include/defines.inc.php
# 更改前
define('ZBX_GRAPH_FONT_NAME', 'DejaVuSans'); // font file name
# 更改后
define('ZBX_GRAPH_FONT_NAME', 'SIMKAI'); // font file name
然后刷新界面,就可以正常显示了。
如果是使用的 镜像 zabbix-web-apache-mysql
,和 镜像 zabbix-web-nginx-mysql
的操作一致。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
2018-06-13 (转)linux内核调优参数对比和解释
2018-06-13 ls命令显示的total你知道代表着什么吗?