【まとめ】CentOS7 で glibc をアップデート後、 mod_php + httpd の logrotate (reload ) が失敗する: /lib64/libresolv.so.2: symbol __h_errno, version GLIBC_PRIVATE not defined in file libc.so.6 with link time reference

3つのエントリで問題を追いかけたのでまとめ

追いかけていた問題

httpd + mod_phpglibc をアップデート後、 logrotate 時に以下のログを出して失敗する問題を追っていた

Graceful restart requested, doing restart httpd: Syntax error on line 39 of /etc/httpd/conf/httpd.conf: Syntax error on line 1 of /etc/httpd/conf.modules.d/php7.load: /lib64/libresolv.so.2: symbol __h_errno, version GLIBC_PRIVATE not defined in file libc.so.6 with link time reference

hiboma.hatenadiary.jp

1つめのエントリで、再現の手順とコードをまとめた

hiboma.hatenadiary.jp

2つめのエントリで、原因を分析した

hiboma.hatenadiary.jp

3つめのエントリで、問題を起こす glibc のバージョンやパッチ・コミットログを追った

まとめと感想

  • コンテナ環境に移行することで glibc のアップデートでこのような問題にも遭遇しなくなり、ナレッジの価値が薄れていくかもしれない
  • 一方で、コンテナを提供するレイヤを扱う人や、依然として非コンテナ ( VM や オンプレーサーバー) で動き続ける環境では 上記にまとめた内容やデバッグ方法が何らかの形で役に立ってくれるとよいなと思ってる