デーモンプロセス(私の場合はApache)の開始時にOOMキラー調整値を正しく設定する方法はありますか? Apacheプロセスが強制終了される可能性を高め、より重要なサービスがOOMキラーによって強制終了されることを事実上不可能にしたいと思います。
承認された回答:
init.dの一部として別のスクリプトを追加するのが最善の策だと思います。その中で、あなたはこのようなことをしたいと思うでしょう
echo 15 > /proc/`pidof APP_NAME`/oom_adj
pidof APP_NAME
その名前のアプリのプロセスIDを取得します。 / proc / {pid} / oom_adjに15を書き込むと、プロセス{pid}の「悪さ」が高まり、OOMキラーによって殺される可能性が高くなります。
LWN.netの「OOMキラーを使いこなす」という記事も、「oom_victim」の指定を可能にするために提案された他のいくつかのアイデアを示唆していますが、それらのいずれかが実際にカーネルにあるかどうかはわかりません。
ところで:最善の解決策は、そもそもOOMKillerを使用する必要がないようにすることです。 Micro$oftの書かれていないモットーを覚えておいてください。RAMがこれ以上修正できない問題はありません。
[注:これらのプロセスが複数存在する可能性がある場合は、コードを少し修正することをお勧めします。]