`free`:出力フォーマット

`free`:出力フォーマット

free特定のサーバーで空き容量を確保するために使用します。出力は次のようになります。

$ free -m
             total       used       free     shared    buffers     cached
Mem:           374        366          8          0         58         98
-/+ buffers/cache:        209        165
Swap:         1906        120       1785

私に残った空き容量はどれくらいですか?

答え1

free出力リストの最初の行は次のとおりです。

  • total合計物理メモリ(仮想化がないと仮定)
  • used現在どのくらい(何でも)使用されていますか?
  • freeそのうち、完全無料(まったく使用されていません)は何ですか?
  • shared tmpfsで使用されるメモリ(主に)(Linuxの場合、カーネル> = 2.6.32)
  • buffersカーネルバッファで使用されるメモリ
  • cachedキャッシュに使用されるメモリ

最後の2つのエントリ、キャッシュとバッファは、特定のユーザープロセスに割り当てられていないメモリです。全体的なパフォーマンスを向上させるためにカーネルが予約したメモリですが、「アプリケーション」メモリではありません。これらの領域は、キャッシュ、メモリ圧力、アプリケーションI / Oパターンなどに関連するカーネルポリシーに応じて増減します。

これら2つの列はユーザ​​ー割り当てメモリではなく、ユーザー割り当てに必要な場合は領域が縮小される可能性があるため(実際にはゼロ)、ある意味では「使用可能」です。アプリケーションにメモリがあると、カーネルはRAMを積極的に取得できます。それ。

これが2行目が言うことです。列からバッファとキャッシュメモリを削除しused(つまり-、列+に追加しますfree)(丸めの問題が発生します。)

(最後の行にはスワップスペースの状態が表示されます。)

答え2

スワップがない場合、実際の空き容量は165です。キャッシュを使用すると、8MBの空き容量があります。キャッシュがなければ、165MBの空き容量があります。-/+その行はキャッシュされません。最初の行はキャッシュです。

関連情報