CentOS7.1でZabbix3.0を起動しようとするとSegfaultで怒られて起動できない。

# 概要
CentOS7.1にZabbix3.0を入れた際にlibpthread-2.17.soでsegfaultが発生して起動できず。。。
その際の対応履歴。

# 結論。
自分の場合は*trousers*パッケージのアップグレードで治ったようだ。

* もしかしたら、直前にやったgnutlsのアップグレードも功を奏しているのかも。(見込み薄。。。)

# 環境
```
# cat /etc/redhat-release
CentOS Linux release 7.1.1503 (Core) 
# 
```


# Zabbixが起動できない。

* おや？？

```
# systemctl start zabbix-server
Job for zabbix-server.service failed. See 'systemctl status zabbix-server.service' and 'journalctl -xn' for details.
# 
```

## 状況確認してみる。
* 情報が足りないので、言われた通り「*journalctl -xn*」を叩く。
  *  どうやら「libpthread-2.17.so」でsegfaultが発生しているようだ。(´・ω・｀)＜…ﾏｼﾞｶﾖ

```
# journalctl -xn
-- Logs begin at 金 2015-12-25 05:01:32 JST, end at 水 2016-02-17 10:22:57 JST. --
 2月 17 10:12:17 test-srv systemd[1]: zabbix-server.service: control process exited, code=killed status=11
 2月 17 10:12:17 test-srv systemd[1]: Failed to start Zabbix Server.
-- Subject: Unit zabbix-server.service has failed
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
-- 
-- Unit zabbix-server.service has failed.
-- 
-- The result is failed.
 2月 17 10:12:17 test-srv systemd[1]: Unit zabbix-server.service entered failed state.
 2月 17 10:12:27 test-srv systemd[1]: zabbix-server.service holdoff time over, scheduling restart.
 2月 17 10:12:27 test-srv systemd[1]: Stopping Zabbix Server...
-- Subject: Unit zabbix-server.service has begun shutting down
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
-- 
-- Unit zabbix-server.service has begun shutting down.
 2月 17 10:12:27 test-srv systemd[1]: Starting Zabbix Server...
-- Subject: Unit zabbix-server.service has begun with start-up
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
-- 
-- Unit zabbix-server.service has begun starting up.
 2月 17 10:12:27 test-srv systemd[1]: zabbix-server.service: control process exited, code=killed status=11
 2月 17 10:12:27 test-srv systemd[1]: Failed to start Zabbix Server.
-- Subject: Unit zabbix-server.service has failed
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
-- 
-- Unit zabbix-server.service has failed.
-- 
-- The result is failed.
 2月 17 10:12:27 test-srv systemd[1]: Unit zabbix-server.service entered failed state.
 2月 17 10:12:27 test-srv kernel: zabbix_server[59778]: segfault at 18 ip 00007f1c55f26c00 sp 00007fff6eba4e78 error 4 in libpthread-2.17.so[7f1c55f1d000+16000]
# 
```

## 調査編。
* ググッてみるとほぼ状況同じ方のエントリを発見。
  * [CentOS 7.1でZabbix Server 2.4.4がsegfault] (http://gmt-24.net/archives/1248)

```
以下の状況と同じようです。
[ZBX-7790] zabbix_server_m[13777]: segfault at 18 ip 00007fe6639a8fe0 sp 00007fffbb66e498 error 4 in libpthread-2.18 – crash in "main" process – ZABBIX SUPPORT
trousersパッケージの削除かgnutlsのダウングレードで解決するようですが、trousersを削除するとpacemakerも削除されるので今回はgnutlsをダウングレード。
```

* 敢えて逆にgnutlsアップグレードしてみるかｗ

# 試行錯誤編。
## gnutilsのアップグレードを試す。

* 結果変わらず…(´・ω・｀)

```
# yum install gnutls
(中略)                         98/98
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> パッケージ gnutls.x86_64 0:3.3.8-12.el7_1.1 を 更新
--> 依存性の処理をしています: gnutls(x86-64) = 3.3.8-12.el7_1.1 のパッケージ: gnutls-utils-3.3.8-12.el7_1.1.x86_64
--> 依存性の処理をしています: gnutls(x86-64) = 3.3.8-12.el7_1.1 のパッケージ: gnutls-devel-3.3.8-12.el7_1.1.x86_64
--> 依存性の処理をしています: gnutls(x86-64) = 3.3.8-12.el7_1.1 のパッケージ: gnutls-c++-3.3.8-12.el7_1.1.x86_64
--> 依存性の処理をしています: gnutls(x86-64) = 3.3.8-12.el7_1.1 のパッケージ: gnutls-dane-3.3.8-12.el7_1.1.x86_64
---> パッケージ gnutls.x86_64 0:3.3.8-14.el7_2 を アップデート
--> トランザクションの確認を実行しています。
---> パッケージ gnutls-c++.x86_64 0:3.3.8-12.el7_1.1 を 更新
---> パッケージ gnutls-c++.x86_64 0:3.3.8-14.el7_2 を アップデート
---> パッケージ gnutls-dane.x86_64 0:3.3.8-12.el7_1.1 を 更新
---> パッケージ gnutls-dane.x86_64 0:3.3.8-14.el7_2 を アップデート
---> パッケージ gnutls-devel.x86_64 0:3.3.8-12.el7_1.1 を 更新
---> パッケージ gnutls-devel.x86_64 0:3.3.8-14.el7_2 を アップデート
---> パッケージ gnutls-utils.x86_64 0:3.3.8-12.el7_1.1 を 更新
(中略)

更新:
  gnutls.x86_64 0:3.3.8-14.el7_2

依存性を更新しました:
  gnutls-c++.x86_64 0:3.3.8-14.el7_2                       gnutls-dane.x86_64 0:3.3.8-14.el7_2                       gnutls-devel.x86_64 0:3.3.8-14.el7_2                       gnutls-utils.x86_64 0:3.3.8-14.el7_2                      

完了しました!
```

## カッとなってgnutilsを削除しようとした。

* 依存関係で一緒に削除されるパッケージが多すぎて断念。。。

```
# yum remove gnutls
(中略)
トランザクションの要約
=====================================================
削除  2 パッケージ (+161 個の依存関係のパッケージ)
```

# 解決編。
## 上記の参考リンクにあった、trousersについてもアップグレードしてみたら上手くいった。

* もしかしたら、バグフィックスされたのか？

```
# yum install trousers
読み込んだプラグイン:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: ftp.iij.ad.jp
 * epel: ftp.kddilabs.jp
 * extras: ftp.iij.ad.jp
 * nux-dextop: li.nux.ro
 * updates: ftp.iij.ad.jp
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> パッケージ trousers.x86_64 0:0.3.11.2-3.el7 を 更新
---> パッケージ trousers.x86_64 0:0.3.13-1.el7 を アップデート
--> 依存性解決を終了しました。

依存性を解決しました
```

## 確認。


```
# systemctl start zabbix-server
# systemctl status zabbix-server.service 
zabbix-server.service - Zabbix Server
   Loaded: loaded (/usr/lib/systemd/system/zabbix-server.service; enabled)
   Active: active (running) since 水 2016-02-17 10:24:53 JST; 37min ago
  Process: 59973 ExecStart=/usr/sbin/zabbix_server -c $CONFFILE (code=exited, status=0/SUCCESS)
 Main PID: 59975 (zabbix_server)
   CGroup: /system.slice/zabbix-server.service
           └─59975 /usr/sbin/zabbix_server -c /etc/zabbix/zabbix_server.conf

 2月 17 10:24:53 koizumi-test systemd[1]: Started Zabbix Server.
#
```