Red Hatの森若です。
「RHELは常にアップデートして、最新バージョンを使ってください。既知の問題が直っているからいいですよ」という話はよくします。 ふと「具体的にどんな問題があったのか/直したのかがわかるといいのかもしれない」と思いつきました。
最近は暑いので怖い話も多少は需要があるでしょう。
そこでナレッジベースからsystemdの大きめの問題修正をピックアップしてみました。
以下では、私が独断と偏見でピックアップした systemdの大きめの問題 について、修正されたマイナーリリース毎に紹介していきます。
RHEL 8.1
systemd-journald プロセスのヒープメモリ使用量が徐々に増加する問題:
systemd-journaldプロセスのヒープメモリ使用量が徐々に高くなることがありましたが、これは systemd-239-18.el8_1.1 で修正されました。systemd-journald: amount of heap memory is getting gradually high - Red Hat Customer Portal
RHEL 8.2
Type=Notify および NotifyAccess=All が設定されたサービスが意図せず停止する可能性がある問題:これらの設定を持つサービスが、PID の不足などが原因で、他のサービスによって不意に終了させられる可能性がありました。これは systemd-239-29.el8 で修正されました。
RHEL 8.3
システムシャットダウン時に「Reached target Shutdown」でシステムがハングする問題:システムがシャットダウン中に
swapがアクティブなままで、「Reached target Shutdown」メッセージの後にハングすることがありました。これは systemd-239-40.el8 で修正されました。System hangs on shutdown after printing "Reached target Shutdown" - Red Hat Customer Portal
RHEL 8.4
systemd --user が bus_process_internal() でアサートに失敗しクラッシュする問題:この問題は systemd-239-45.el8 以降 で修正されました。
RHEL8: "systemd --user" crashes on assert in bus_process_internal() - Red Hat Customer Portal
RHEL 8.5
systemd がセグメンテーション違反でクラッシュする問題:
systemdがセグメンテーション違反でクラッシュし、ログインの遅延やシステムの応答不能を引き起こすことがありました。systemd-239-51.el8_5.2 以降に更新することで修正されます。
RHEL 8.7
systemctl list-unit-files コマンドが CPU 使用率を大幅に増加させ、操作を遅延させる問題:このコマンドを頻繁に実行すると、
systemdの CPU 使用率が急増し、システムが使用不能になる問題がありました。これは systemd-239-68.el8 以降 で修正されました。
RHEL 8.8
ジャーナルにおけるサービスユニットからのログ出力が不正な形式になる問題:サービスユニットからのジャーナルログ出力が不正な形式になる問題がありました。これは systemd-239-74.el8_8 で修正されました。
rhel8: The output of certain journal logs is corrupted - Red Hat Customer Portal
systemd-logind が「Assertion 'pid > 1' failed」でアサートに失敗しクラッシュする問題:
systemd-logindプロセスがアサートでクラッシュする問題が報告されました。これは systemd-239-74.el8_8.3 で修正されました。
RHEL 8.10
DefaultTasksMax= が system.conf で値なしでコメント解除されていると、systemdが起動時にセグメンテーション違反でクラッシュする問題:この誤った設定により、サーバー起動時に
systemdがクラッシュし、起動に失敗することがありました。これは systemd-239-82.el8_10.4 以降 で修正されました。
おわりに
systemdの問題では、起動中だと起動不能になるものもあり、運用中だとシャットダウンやサービスの起動・終了もできなくなるケースがあります。 最新のバージョンを使ってこれらの問題を回避しましょう。