Categories: linux

free -hで簡単確認!Linuxのメモリ使用状況を見える化する方法

Linuxシステムを管理するうえで、メモリ使用量の確認はとても重要です。サーバーの負荷が高いときや動作が重くなったとき、「いまどれくらいのメモリが使われているのか」をすぐに知りたい場面があります。そんなとき役立つのが、freeコマンドです。特に-hオプションを付けたfree -hは、出力結果を人間にとって読みやすい単位(KB、MB、GBなど)で表示してくれるため、初心者にも扱いやすいのが特徴です。この記事では、free -hコマンドの基本的な使い方から、出力結果の見方、応用的な活用方法までをわかりやすく解説します。


free -hコマンドとは?

Linuxには、現在のメモリやスワップ領域の使用状況を表示するfreeというコマンドがあります。freeコマンドに-hオプションをつけることで、「human readable(人が読める形式)」で情報を表示してくれます。

$ free -h

このコマンドを実行すると、以下のような出力が得られます。

              total        used        free      shared  buff/cache   available
Mem: 15Gi 2.3Gi 9.1Gi 145Mi 3.4Gi 12Gi
Swap: 2.0Gi 0.0Gi 2.0Gi

この結果を見れば、どれくらいのメモリが使われ、どれくらいが空いていて、バッファやキャッシュにどれだけ使用されているかが一目でわかります。


各項目の意味を詳しく解説

出力結果を見ても、慣れないうちは「usedとfreeだけ見ればいいの?」と思いがちですが、実はそれだけでは本当の状況はつかめません。ここでは、それぞれの列が何を意味しているかを説明します。

total(合計)

システム全体で使用可能な物理メモリの総量です。RAMの搭載量がそのまま反映されます。

used(使用中)

OSやアプリケーションによって実際に使用されているメモリ量を示します。これは「空きがこれだけある」と判断する材料にはなりません。

free(空き)

何も使用していない完全な空きメモリ量です。ですが、Linuxはメモリを効率よく使うため、未使用のメモリをキャッシュやバッファに使っていることがあります。

shared(共有)

複数のプロセスで共有されているメモリの量です。たとえば一部のライブラリや一時的なデータなど。

buff/cache(バッファ・キャッシュ)

ディスクアクセスを効率化するために使われているメモリ領域です。一見「使われている」と思われがちですが、必要があればすぐに開放されるメモリなので、「空き」と同様に考えて差し支えありません。

available(利用可能)

実際にアプリケーションが使用できるメモリの目安です。Linuxのカーネルが計算して出してくれるこの値が、最も「空きメモリ」に近い感覚で見ていい数字です。


スワップ(Swap)とは?

出力結果の下段にある「Swap」は、物理メモリが足りなくなった場合に、ディスク上に確保された仮想メモリ領域のことです。

  • total:スワップ領域の総量
  • used:現在使用中のスワップ量
  • free:まだ使われていないスワップ量

スワップを頻繁に使用している場合は、物理メモリが不足しており、動作が遅くなる原因になります。


よくある活用例

1. サーバーが重くなった時の原因確認

突然動作が重くなった場合、free -hでメモリの空きが十分あるかをチェックします。

$ free -h

このとき、availableの値が極端に少なければ、メモリ不足が原因の可能性が高いです。

2. プロセスの増加による影響確認

アプリケーションの数が増えたとき、RAMの消費状況を見るのにも便利です。

$ watch free -h

watchコマンドと組み合わせることで、数秒おきに更新されたメモリ使用状況をリアルタイムで確認できます。


オプションのバリエーションも知っておこう

free -hの他にも、状況に応じて以下のようなオプションがあります。

オプション説明
-bバイト単位で表示
-kキロバイト単位で表示(デフォルト)
-mメガバイト単位で表示
-gギガバイト単位で表示
-s NN秒ごとに自動更新
-t合計行を追加表示

例:

$ free -m -t

これは、MB単位で表示し、かつ合計メモリ量の行も追加してくれます。


GUIよりも軽くて速い!CLIで確認するメリット

GUI(グラフィカルユーザーインターフェース)でのメモリ確認も可能ですが、free -hは以下のようなメリットがあります。

  • サーバーなどGUIのない環境でも確認できる
  • 表示が速く、システム負荷が軽い
  • 他のコマンドと組み合わせてスクリプト化できる

特に、サーバーやクラウドインスタンスを管理しているエンジニアにとっては、欠かせないツールです。


まとめ:メモリ確認の第一歩はfree -hから

free -hコマンドは、Linux環境でメモリの使用状況を手軽に把握するための基本ツールです。出力結果の各項目の意味を正しく理解しておけば、パフォーマンスのトラブル時に迅速に状況把握ができます。とくに「available」の値に注目することで、実際にどれくらい使えるメモリがあるのかを判断できます。

シンプルながらも非常に便利なこのコマンドを、ぜひ日常の管理作業に活用してみてください。次のステップとしては、tophtopvmstatなどのコマンドと併用し、より深くメモリの挙動を観察していくのもおすすめです。

upandup

Web制作の記事を中心に、暮らし、ビジネスに役立つ情報を発信します。 アフィリエイトにも参加しています。よろしくお願いいたします。