Ksplice拡張クライアントの制限事項
Oracle Kspliceについては次の重要な制限事項に注意してください。
-
/var/cache/ksplice
ディレクトリへのアクセス権がないプロセスに更新を適用できない場合、Kspliceから次のようなエラーがレポートされます:Ksplice was unable to load the update as the target process is in a different mount namespace or has changed root. The service must be restarted to apply on-disk updates. Extra information: the process has changed root or mount namespace. └─ rtkit-daemon (3680)
このエラーは、
chroot
を使用するプロセス、またはコンテナで実行されるプロセスで発生する可能性があります。そのような場合、使用可能な更新を適用するには、プロセスを再起動する必要があります。たとえば、rtkit-daemon
サービスを再起動するには、systemctl restart rtkit-daemon
コマンドを使用します。メンテナンスおよびコンパイルする
chrooted
アプリケーションが再起動されないようにするには、/var/cache/ksplice
ディレクトリがchrooted
環境にバインド・マウントされるようにします。 -
Kspliceは、プロセス・スレッド間のユーザー・スペース・コンテキストの切替えを実行するために、
glibc
からsetcontext
またはswapcontext
のいずれかを使用するアプリケーションにパッチ適用できません。 -
特定のカーネル制限のため、Kspliceは
init
プロセス(PID1
)にパッチを適用しません。Oracle Linux 7以降では、
init
プロセスはsystemd
であり、システム更新で自動的に再実行されるため、Kspliceによるパッチ適用は必要ありません。