1台以上のLinuxホストでFail2Banを運用し、ban、jail、filter、アラートを管理するWebプラットフォーム。
rfjakob/earlyoom
メモリとスワップ不足でシステムがフリーズする前に、最大のプロセスを終了する軽量なLinuxユーザー空間デーモン。
- スター
- 4,351
- フォーク
- 215
- 未解決の Issue
- 28
- 最終コミット
- 一昨日
これは何?
earlyoomは、利用可能なメモリと空きスワップを監視し、カーネル標準のOOM killerが作動する前にプロセスを終了するLinux向けの小さなデーモンです。カーネルのOOM killerは通常、スワップやキャッシュの解放を先に行い、システムがほとんど使いものにならなくなるまで待ちます。earlyoomはユーザー空間で動作し、「free」ではなく「available」のメモリ量を使って、最大で毎秒10回メモリを確認します。
デフォルトでは、利用可能なメモリと空きスワップがどちらも全体の10%を下回ると、earlyoomは最も高いoom_scoreを持つプロセスにSIGTERMを送ります。しきい値やSIGKILLを送る段階、終了対象の選び方は、--prefer、--avoid、--ignore、--sort-by-rssなどのコマンドラインオプションで調整できます。依存関係のないC製で、メモリに負荷がかかっても動作し続けるよう、mlockall()でメモリをロックします。
makeでソースからインストールしてsystemdまたはinit.dのサービスとして登録できるほか、Debian、Ubuntu、Fedora、Archのパッケージからもインストールできます。任意のd-bus通知と、プロセス終了の前後に実行するスクリプト(-Nおよび-P)を使って、終了時の処理を行えます。
主な機能
- 01利用可能なメモリと空きスワップを最大で毎秒10回確認します。
- 02設定可能なしきい値に基づき、まずSIGTERMを送り、その後SIGKILLを送ります。
- 03oom_score、または--sort-by-rss指定時はRSSに基づいて終了対象を選びます。
- 04--prefer、--avoid、--ignoreの正規表現で対象を制御できます。
- 05任意のd-bus通知と、終了前後に実行するスクリプトに対応しています。
- 06依存関係のない純粋なC製で、--dryrunモードも備えています。
ユースケース
- ブラウザーやIDEのメモリリークでデスクトップやノートPCの応答が遅くなるのを防ぐ。
- 暴走プロセスから共有Linuxサーバーやビルドマシンを保護する。
- スワップの過剰な発生が起きやすい、メモリの少ないVMやシングルボードコンピューターで実行する。
- メモリ不足でプロセスが終了した際に、アラートやクリーンアップスクリプトを実行する。
トピック
よくある質問
- earlyoom とは?
- メモリとスワップ不足でシステムがフリーズする前に、最大のプロセスを終了する軽量なLinuxユーザー空間デーモン。 earlyoomは、利用可能なメモリと空きスワップを監視し、カーネル標準のOOM killerが作動する前にプロセスを終了するLinux向けの小さなデーモンです。カーネルのOOM killerは通常、スワップやキャッシュの解放を先に行い、システムがほとんど使いものにならなくなるまで待ちます。earlyoomはユーザー空間で動作し、「free」ではなく「available」のメモリ量を使って、最大で毎秒10回メモリを確認します。
- earlyoom は無料で使えますか?ライセンスは?
- earlyoom は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- earlyoom は今もメンテナンスされていますか?
- 活発にメンテナンス中。earlyoom の最終コミットは 2026年10月19日 です。
- earlyoom は何に使えますか?
- ブラウザーやIDEのメモリリークでデスクトップやノートPCの応答が遅くなるのを防ぐ。 暴走プロセスから共有Linuxサーバーやビルドマシンを保護する。 スワップの過剰な発生が起きやすい、メモリの少ないVMやシングルボードコンピューターで実行する。 メモリ不足でプロセスが終了した際に、アラートやクリーンアップスクリプトを実行する。
- earlyoom はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/rfjakob/earlyoom
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
Linuxで待ち受け中のポートを一覧表示し、使用プロセスの確認や終了ができるTUI。
プロセス、ポート、コンテナ、ファイルを起点までたどり、起動したシステムの連鎖を明らかにするCLI/TUIです。
Windows DriverStore内のドライバーパッケージを表示、エクスポート、整理できる、オンラインとオフラインに対応したWindows GUIツールです。
ライブのあいまい検索で、名前・パス・引数・ポートからプロセスを探して終了する対話型ターミナルツール
会話履歴をそのまま保存し、セマンティック検索で取得するローカルファーストのAIメモリシステム。MCPサーバーとCLIを提供します。