Zabbix汉化

Zabbix 6.0 汉化操作笔记 (基于 frontend.po 文件,文件在下载列表可取)

核心原理

Zabbix 界面不能直接读取 .po (Portable Object) 源文件,需要将其编译成二进制格式的 .mo (Machine Object) 文件后才能被识别和加载。本笔记记录的就是这个“编译+部署”的手动过程。

适用场景

  • 服务器无法连接互联网,无法通过 yumapt 直接安装语言包。
  • 只能找到或下载到 frontend.po 此类翻译源文件。
  • 希望对汉化过程有更彻底的控制。

操作步骤

第1步:安装编译工具 msgfmt

msgfmt 是 GNU gettext 工具集的一部分,负责将 .po 文件编译为 .mo 文件。

  • 在 CentOS / RHEL / Rocky Linux 系统上执行:
sudo yum install gettext
  • 在 Ubuntu / Debian 系统上执行:
sudo apt update
sudo apt install gettext

第2步:编译 .po 文件为 .mo 文件

  1. 将您获取到的 frontend.po 文件上传到 Zabbix 服务器的任意目录,例如 /tmp 或您的主目录 ~
  2. 打开终端,进入存放 frontend.po 文件的目录。
  3. 执行编译命令:
# 这条命令会读取 frontend.po 文件,并生成一个标准的 zh_CN.mo 文件
msgfmt -o zh_CN.mo frontend.po

如果命令执行成功,不会有任何输出,但当前目录下会生成一个新的 zh_CN.mo 文件。

第3步:部署 .mo 文件到正确目录

  1. 创建 Zabbix 中文语言包目录(如果目录不存在):
sudo mkdir -p /usr/share/zabbix/locale/zh_CN/LC_MESSAGES/
  1. 将编译好的 .mo 文件移动到此目录,并确保文件名正确:
sudo cp zh_CN.mo /usr/share/zabbix/locale/zh_CN/LC_MESSAGES/
  1. 【关键】设置正确的文件权限和所有者
    必须确保 Web 服务器软件(如 Nginx 或 Apache)的运行用户有权读取这个文件。
# 首先,查看您的 Web 服务器用户(通常是 nginx 或 apache)
ps aux | grep nginx
# 或者
ps aux | grep apache

# 然后,将文件所有者改为该用户(请根据您的实际用户修改!)
# 如果您的用户是 nginx:
sudo chown nginx:nginx /usr/share/zabbix/locale/zh_CN/LC_MESSAGES/zh_CN.mo

# 如果您的用户是 apache:
sudo chown apache:apache /usr/share/zabbix/locale/zh_CN/LC_MESSAGES/zh_CN.mo

第4步:重启服务并应用更改

使新的语言文件生效:

# 重启 PHP-FPM 和 Web 服务器

# 如果使用 Nginx:
sudo systemctl restart php-fpm nginx

# 如果使用 Apache:
sudo systemctl restart php-fpm apache2
# 或者
sudo systemctl restart apache2

第5步:在 Web 界面完成汉化

  1. 打开浏览器,访问您的 Zabbix 地址。
  2. 登录后,点击右上角的 用户头像 -> Language
  3. 在下拉菜单中,选择 Chinese (zh_CN)
  4. 点击 Update 保存设置。
  5. 至关重要的一步:按住键盘上的 Ctrl + F5 (或 Ctrl + Shift + R强制彻底刷新浏览器页面。界面将立即切换为中文。

注意事项与常见问题

  • 权限问题:第3步中的 chown 命令是成功的关键。如果权限不对,Zabbix 将无法读取 .mo 文件,导致语言列表中不出现中文选项。
  • 浏览器缓存:切换语言后,必须强制刷新浏览器,否则可能看不到变化。
  • 文件路径:文件必须放在 /usr/share/zabbix/locale/zh_CN/LC_MESSAGES/zh_CN.mo 这个精确的路径上。
  • 版本一致性:您使用的 frontend.po 文件最好与您的 Zabbix 6.0 小版本号一致,以避免出现少量未翻译的字符串。

命令总结

步骤核心命令
安装工具sudo yum install gettext
编译文件msgfmt -o zh_CN.mo frontend.po
创建目录sudo mkdir -p /usr/share/zabbix/locale/zh_CN/LC_MESSAGES/
移动文件sudo cp zh_CN.mo /usr/share/zabbix/locale/zh_CN/LC_MESSAGES/
设置权限sudo chown nginx:nginx .../zh_CN.mo (按需修改用户)
重启服务sudo systemctl restart php-fpm nginx
最终操作在浏览器中按 Ctrl+F5 强制刷新

文末附加内容
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇