systemd-coredumpがダンプをメモリ自体に保存するのはなぜですか?

systemd-coredumpがダンプをメモリ自体に保存するのはなぜですか?

最近終了したいくつかのプロセスのコアダンプが私のメモリの大部分を占めることに気づきました。競合が発生した各プロセスに対してsystemd-coredumpプロセスを実行しました(通常、これらのプロセスはgoogle-chromeで強制終了しましたが、これは多くのメモリ消費を説明しました)。

私が知りたいのは、クラッシュしたプロセスのコアをディスクにダンプするのではなく、コア全体をメモリに保持する新しいプロセスが始まる理由です。

私の設定に問題がありますか?それともこれが必要ですか?それでは、この動作をどのように変更できますか?

/dev/null現在のリンクでコアダンプストアを無効にしており、コアダンプが/etc/sysctl.d/coredump.conf表示されていなくてもそれを有効にしたいと思います。どんなアイデア/ヒントでもいただければ幸いです。

(この質問は次の場所にも投稿されました。https://bbs.archlinux.org/viewtopic.php?pid=1246237)

ベストアンサー1

デフォルトでは、コアダンプはディスクに書き込まれ、メモリに書き込まれてはいけません。よりコアマニュアルページより多くの情報を知りたいです。以下では、コアファイルのパスとファイル名を検索して変更できます。/proc/sys/kernel/core_pattern

coredump.conf次に、リダイレクトしてコアダンプを無効にできます。null

$ sudo ln -s /dev/null /etc/sysctl.d/coredump.conf && /lib/systemd/systemd-sysctl

コアダンプを無効にする別の方法は次のとおりです。設定変更存在するlimits.conf

おすすめ記事