前回は、Linux版タスクマネージャー top コマンドについて紹介しました。プロセスごとの詳細な動きを見るには最適でした。
「結局、メモリはあとどれくらい空いているの?」という全体像をサクッと知りたい時には、今回紹介するfreeコマンドの方が便利です。
関連:linux版タスクマネージャー topコマンド
【topとhtop】LinuxでCPUやメモリの使用率をリアルタイムで確認する方法【Linuxコマンド入門 Part3-1】
linux版タスクマネージャー topコマンド、CPUやメモリの使用率を確認し、タスクを管理する方法を紹介します。よく使うショートカットについてまとめました。

free コマンド
free は、その名の通り システムの物理メモリとスワップメモリの「使用量」と「空き容量」を表示する コマンドです。
「サーバーが重いな?」と思った時に、まず最初に叩くコマンドの一つです。
基本構文
使い方は、以下のようにターミナルに打ち込むだけです。
freeしかし、これだけだと数値が「キロバイト (KiB)」単位で表示されるため、現代の大容量メモリのPCでは桁数が多すぎてパッと分かりません。
-hオプション(human-readable)をつけると見やすいです。
おすすめオプション付き
free -h実行結果の見方
free -h を実行すると、以下のような表が表示されます。
出力結果例
total used free shared buff/cache available
Mem: 3.7Gi 389Mi 2.5Gi 120Mi 0.8Gi 3.3Gi
Swap: 1.0Gi 0B 1.0Gi見るべきポイントは以下の3つです。
- total (全体): 搭載されている物理メモリの総量。
- used (使用中): OSやプログラムが「これ以上使えない」と確保している量。
- available (実質利用可能):ここが本当の空き容量
- free: 何にも使われていない真っ更な空き領域。
- buff/cache: Linuxが「今は使ってないけど、いつでも使えるようにデータを一時保存(キャッシュ)しておこう」と確保している領域。
ポイント: Linuxは空いているメモリを積極的に「キャッシュ(buff/cache)」として使い、システムの動作を速くしようとします。しかし、アプリがメモリを必要とすれば、この領域はすぐに解放されます。 つまり、「available」の数値に余裕があれば、メモリ不足ではありません。
「free」と「available」は何が違うの?
実行結果を見て、「free(空き)がこんなに少ない!ワシのサーバ、メモリ足りんくね?」と焦ったことはありませんか?実は、Linuxにおいて free が少ないのは、むしろ正常で健全な状態なのです。
この2つの違いを、「図書館の机」に例えてみましょう。
- Total(全体のメモリ): あなたの作業机の広さです。
- Used(使用中): 現在、勉強や仕事で広げているノートやパソコンです。これは片付けられません。
- Free(完全な空き): 何も置かれていない、ピカピカのスペースです。
- Buff/Cache(キャッシュ): 「さっき読んだ本」や「後で使うかもしれない資料」を、とりあえず机の空いている場所に置いている状態です。本棚に戻す(ディスクに保存する)より、机の上(メモリ)にあったほうがすぐに手が届きますよね?
- Available(実質利用可能): 「新しい作業を始められる広さ」です。 これは 「Free(ピカピカの場所)」+「Buff/Cache(どかせば使える場所)」 の合計です。
Linuxの考え方: Linuxは「使っていないメモリ(机の空き)があるなんてもったいない!」と考えます。 そのため、free(空きスペース)があれば、そこになるべく多くのファイルデータ(キャッシュ)を詰め込んで、PCの動作を高速化しようとします。
もし新しいアプリを起動したくなったら? Linuxは瞬時に「とりあえず置いてある本(Cache)」を片付けて、場所を空けてくれます。
だから、free が少なくても心配無用です。 本当に気にするべきは、「すぐに場所を空けられるか」を示す available の数値です。
もし Swap の used が増えていたら?
2行目の Swap(スワップ) に注目してください。 ここの used が 0B ではなく、数GBなど大きな数字になっている場合は要注意です。物理メモリ(主記憶)が足りなくなり、遅いHDDやSSDをメモリ代わりに使い始めています。これが「PCが重い」原因になります。
Swapが増えていたらメモリ増設を検討するサインです。
まとめ
- free:空きメモリを確認するコマンド
- free -h:読みやすくするオプション
- 空き容量はavailableの値
- Swap使用量は要チェック: ここが増えていたらメモリ増設を検討するサイン。
top コマンドと合わせて使えば、システムの状態把握はバッチリです。
次回は、サーバーが「いつから起動しているか(稼働時間)」や「システム全体の負荷」を確認する uptime コマンドなどを紹介します。
次回 uptimeコマンド
【uptime】linuxで起動時間と負荷を確認する方法。【Linuxコマンド入門 Part3-3】
linuxでシステムの負荷を1行で確認する方法。uptimeコマンドの使い方について、おすすめオプションも含めて紹介します。
前回 topコマンド
【topとhtop】LinuxでCPUやメモリの使用率をリアルタイムで確認する方法【Linuxコマンド入門 Part3-1】
linux版タスクマネージャー topコマンド、CPUやメモリの使用率を確認し、タスクを管理する方法を紹介します。よく使うショートカットについてまとめました。
第三回”Linuxコマンド入門 Part3 ~システムの状態確認とネットワークの基本~”では、linuxでどのようにCPUやメモリの状態を確認するか、ネットワークとの接続チェックなどの基本操作を解説しています。
6 記事
Linuxコマンド入門 Part3 ~システムの状態確認とネットワークの基本~
Linuxのシステム管理コマンドや基本的なネットワーク関係コマンドを理解しよう。
ここまで読んでいただきありがとうございます。
では、次の記事で。 lumenHero