サーバー監視にZabbixを使用しているが、1.8系にしたところグラフの日本語部分が文字化けしてしまっていた。
どうやらフォントそのものが日本語に対応してないらしい(?)
なので グラフに使われているフォントをさざなみフォントに変更して対応することにする。
・まずフォントのインストール
sudo aptitude install ttf-sazanami-gothic
・インストールしたフォントをZabbixのWEBインターフェースのフォントディレクトリにシンボリックリンクを張る
※インストールされたフォントやWEBインターフェースの場所は各環境に合わせて読み替えて下さい。
cd /usr/share/zabbix/fonts
sudo ln -s /usr/share/fonts/truetype/sazanami/sazanami-gothic.ttf .
・グラフのフォントを指定しているPHPを変更する
sudo nano /usr/share/zabbix/include/defines.inc.php
このPHPの51行目付近のZBX_GRAPH_FONT_NAMEの値をDejaVuSansからsazanami-gothicに変更する
--- /usr/share/zabbix/include/defines.inc.php_org 2010-10-29 00:14:45.854556983 +0900
+++ /usr/share/zabbix/include/defines.inc.php 2010-10-29 00:15:34.974556999 +0900
@@ -48,7 +48,7 @@
define('ZBX_POPUP_MAX_ROWS', 20);
define('ZBX_FONTPATH', realpath('fonts')); // where to search for font (GD > 2.0.18)
- define('ZBX_GRAPH_FONT_NAME', 'DejaVuSans'); // font file name
+ define('ZBX_GRAPH_FONT_NAME', 'sazanami-gothic'); // font file name
define('ZBX_SCRIPT_TIMEOUT', 360); // in seconds
define('ZBX_SCRIPT_BYTES_LIMIT', 1073741824); // 1073741824 is 1MB in bytes
これで日本語を表示できるようになる。