ファイルシステムが ext4 の場合、予約済みのブロックがあります。これは主に処理を支援し、断片化を回避するのに役立ち、root ユーザーのみが使用できます。この設定については、tune2fs を使用してライブで変更できます (ファイルシステムがマウントされている場合、すべての設定をこのように処理できるわけではありません):
<ブロック引用>-m 予約済みブロックの割合
特権プロセスによってのみ割り当てられるファイルシステムのパーセンテージを設定します。特権プロセスが使用するためにいくつかのファイルシステム ブロックを予約するのは、ファイル システムの断片化を回避し、syslogd(8) などのシステム デーモンが非特権プロセスによるファイル システムへの書き込みが防止された後も正しく機能し続けられるようにするためです。通常、予約済みブロックのデフォルトの割合は 5% です。
したがって、予約を 1% (~ 2GB) に下げて、予約済みスペースの ~ 8GB にアクセスしたい場合は、次のようにすることができます:
sudo tune2fs -m 1 /dev/nvme0n1p8
注:-m
オプションは、実際には 10 進数をパラメーターとして受け入れます。 -m 0.1
を使用できます 約 200MB のみを予約します (そして、以前は利用できなかった 10GB のほとんどにアクセスします)。 -r
も使用できます 代わりに、ブロックごとに直接予約するオプション。予約済みブロックを 0 にすることはおそらくお勧めできません。
削除されたファイルも「スペース不足」の一因となる可能性があります
lsof | grep deleted | grep /home
この出力を返します
chrome 11181 criggie 15u REG 254,0
4194304 50651663 /home/criggie/.config/google-chrome/BrowserMetrics/BrowserMetrics-5D0236AF-2BAD.pma (deleted)
これは、PID 11181 として実行されている Chrome がその BrowserMetrics ファイルを開いてから削除し、ファイルハンドルがまだ開いていることを示しています。これは、ファイルがディレクトリ リストに表示されないことを意味しますが、まだディスク スペースを占有しています。
なぜプログラムはこれを行うのですか?実行中のバイナリが終了すると、OS は開いているファイル ハンドルを解放し、ディスク上のファイルはなくなります。古い一時ファイルが残るリスクはありません。
私が見ることができないのは、そのファイルのディスク使用量がどれほど大きいかです。