先日、サーバーのcronからこんなエラーメッセージが届きました。
/etc/cron.daily/0yum-daily.cron:
Failed to check for updates with the following error message:
Failed to build transaction: ruby-milter-core-2.1.6-1.el7.x86_64 は libruby.so.3.0()(64bit) を要求します
ruby-milter-server-2.1.6-1.el7.x86_64 は rh-ruby30-ruby を要求します
ruby-milter-client-2.1.6-1.el7.x86_64 は libruby.so.3.0()(64bit) を要求します
milter-manager-libs-2.1.6-1.el7.x86_64 は libruby.so.3.0()(64bit) を要求します
ruby-milter-server-2.1.6-1.el7.x86_64 は libruby.so.3.0()(64bit) を要求します
ruby-milter-core-2.1.6-1.el7.x86_64 は rh-ruby30-ruby を要求します
ruby-milter-client-2.1.6-1.el7.x86_64 は rh-ruby30-ruby を要求します
milter-manager-libs-2.1.6-1.el7.x86_64 は rh-ruby30-rubygem-rexml を要求します
どうもSpamassassinと連携してスパムメールの振り分けをしているmilter関係のアップデートに必要なruby3.0が無いってことのようです。
rubyはsclを利用すれば簡単にインストールできるようなので、まずはsclをインストール。
# yum install centos-release-scl
続いてruby3.0をインストール。
# yum -y install rh-ruby30 rh-ruby30-ruby-devel
試しにmilter-managerを手動でアップデートしてみます。
# yum update milter-manager
無事にアップデート完了。
milter-manager、spamassassin、postfixを再起動しておきます。
# systemctl restart milter-manager
# systemctl restart spamassassin
# systemctl restart postfix
これでエラーメッセージは来なくなりましたが、milterにrubyを使っているのもrubyがcronでアップデートできないってのも知らなかったんでけっこうアセりました。。