私は現在ドライブエラーが発生したbtrfs NAS(〜20 TB)を再構築しています。数日かかります。私の問題は、約24時間ごとにRAMがいっぱいになり、システム全体がクラッシュするまでカーネルがプロセスを終了し始めることです。
htop
これをユーザープロセスのメモリ使用量としてマークしますが、ユーザープロセスには重要なメモリ使用量は表示されません。
free
バッファリング/キャッシュRAMとして表示:
# free -h
total used free shared buff/cache available
Mem: 15G 923M 1.0G 16M 13G 5.0G
Swap: 7.9G 0B 7.9G
ご覧のとおり、bio
スラブの使用量はかなり多いです。実行するとsync && echo 3 > /proc/sys/vm/drop_caches
使用量が消去されますが、dentry
まったく効果がありません。bio
NASはCentOSに基づいてRockstorを実行します。問題のマシンはカーネルにあります4.4.5-1.el7.elrepo.x86_64
。 RAM使用量がプロセスの終了を開始する時点に達するまで、カーネルメッセージには注目すべき内容はありません。
BTRFSまたはカーネルのメモリリークのバグですか?これが報告されるべきバグである場合、それを報告するパッケージをどのように決定しますか?
bio
RAMが不足しているため、システムがクラッシュしたときに毎日再起動せずにこのRAIDの再構築を完了するためにキャッシュ使用量を消去する方法はありますか?
病的な好奇心でこれがカーネルキャッシュである場合、なぜhtop
ユーザープロセスのメモリ使用量(緑色のバー)として報告されますか?