M.C.P.C. (Mamesibori Creation Plus Communication)

印刷屋から五反田のWeb屋に転職したCLのブログです。

CentOS6 EPELリポジトリでphpMyAdminを2016/02にアップデートしたらいつもどおりに動かない

CentOS 6用EPELリポジトリphpMyAdminphpMyAdmin.noarch-4.0.10.14-1.el6.rpmになっていますがこれにアップデートすると/etc/phpMyAdminパーミッションが変わってしまって/etc/phpMyAdmin/config.phpに書いていた設定が読めくなるっていう現象が起こっているようです。

具体的には、(社内環境だからね)いままでパスワード無しログイン設定を/etc/phpMyAdmin/config.inc.phpで設定していたら、phpMyAdminアップデート後に、パスワードを要求してくる。

f:id:C_L:20160221184535p:plain

以降操作すべてrootユーザで

アップデート前

# ls -ld /etc/phpMyAdmin/
drwxr-xr-x 2 root apache 4096  2月 17 23:00 2016 /etc/phpMyAdmin/
# ls -l /etc/phpMyAdmin/
-rw-r--r-- 1 root root   7650  2月 17 22:39 2016 config.inc.php
-rw-r----- 1 root apache 7512  5月 14 21:38 2015 config.inc.php.orig

でディレクトリやファイルのパーミッション設定控えておく(drwxr-xr-xのことね、この場合755です)

アップデート

# yum -y --enablerepo=epel update phpMyAdmin
読み込んだプラグイン:fastestmirror
更新処理の設定をしています
Loading mirror speeds from cached hostfile
 * base: mirror.0x.sg
 * epel: ftp.iij.ad.jp
 * extras: ftp.tsukuba.wide.ad.jp
 * updates: ftp.tsukuba.wide.ad.jp
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> Package phpMyAdmin.noarch 0:4.0.10.12-1.el6 will be 更新
---> Package phpMyAdmin.noarch 0:4.0.10.14-1.el6 will be an update
--> 依存性解決を終了しました。

依存性を解決しました

=====================================================================
 パッケージ    アーキテクチャ  バージョン      リポジトリー     容量
=====================================================================
更新:
 phpMyAdmin    noarch          4.0.10.14-1.el6 epel            4.1 M

トランザクションの要約
=====================================================================
アップグレード       1 パッケージ

総ダウンロード容量: 4.1 M
パッケージをダウンロードしています:
phpMyAdmin-4.0.10.14-1.el6.noarch.rpm    | 4.1 MB     00:00
rpm_check_debug を実行しています
トランザクションのテストを実行しています
トランザクションのテストを成功しました
トランザクションを実行しています
  更新          : phpMyAdmin-4.0.10.14-1.el6.noarch     1/2
  整理中        : phpMyAdmin-4.0.10.12-1.el6.noarch     2/2
  Verifying     : phpMyAdmin-4.0.10.14-1.el6.noarch     1/2
  Verifying     : phpMyAdmin-4.0.10.12-1.el6.noarch     2/2

更新:
  phpMyAdmin.noarch 0:4.0.10.14-1.el6

完了しました!

アップデート後

configディレクトリを確認

# ls -ld /etc/phpMyAdmin/
drwxr-x--- 2 root apache 4096  2月 21 18:24 2016 /etc/phpMyAdmin/
# ls -l /etc/phpMyAdmin/
-rw-r--r-- 1 root root   7650  2月 21 18:24 2016 config.inc.php
-rw-r----- 1 root apache 7512  5月 14 21:38 2015 config.inc.php.orig

修復方法

# chmod 755 /etc/phpMyAdmin/

phpMyAdminは最新版使う時も似たような罠があるんですよね……(CentOS 6はMySQLが5.1.73で固定されているため、phpMyAdminもMySQL5.1対応の4.0.10がメンテナンスされているようですね)

あと弊社の謎サーバみたいにApacheの実行ユーザが別人になっているともうちょっと調整しなきゃイカンとかありますのでそこら辺はよしなに(CentOS6でApache実行ユーザをapache以外にするのはトラブりますのでお勧めできません)。