Linux・Mac のリソース確認コマンド:free・df・uname・lscpu まとめ
サーバーや開発環境の状態を把握するときに使うコマンドをまとめます。メモリ・ディスク・CPU・アーキテクチャの情報を素早く確認できます。
OS・アーキテクチャを確認する(uname)
まず「今動いている環境が何か」を確認します。
# アーキテクチャだけ確認(最もよく使う) uname -m
arm64 # Apple Silicon Mac・ARM サーバー x86_64 # Intel/AMD 64bit aarch64 # ARM 64bit(Linux)
# OS 名 uname -s # → Linux / Darwin(macOS) # カーネルバージョン uname -r # → 5.15.0-127-generic(Linux) # → 24.5.0(macOS) # すべての情報を一括表示 uname -a
# macOS(Apple Silicon)の例 Darwin hostname 24.5.0 Darwin Kernel Version 24.5.0 arm64 # Linux の例 Linux hostname 5.15.0-127-generic #1 SMP x86_64 GNU/Linux
macOS のバージョン詳細を確認する
sw_vers
ProductName: macOS ProductVersion: 15.5 BuildVersion: 24F74
メモリ使用状況を確認する
Linux:free コマンド
free -h
total used free shared buff/cache available Mem: 15Gi 3.2Gi 8.1Gi 312Mi 4.1Gi 11Gi Swap: 2.0Gi 0B 2.0Gi
| 列 | 意味 |
|---|---|
| total | 搭載メモリ合計 |
| used | 使用中のメモリ |
| free | 未使用メモリ |
| buff/cache | バッファ・キャッシュ(OS が再利用できる) |
| available | 実質的に使えるメモリ(free + 解放可能な buff/cache) |
空きメモリの目安は available を見るのが正確です。free だけ見るとキャッシュ分が引かれて少なく見えます。
# MB 単位で表示 free -m # 1秒ごとに更新して監視 free -h -s 1
macOS:vm_stat
macOS には free がないため vm_stat を使います。
vm_stat
Pages free: 208000 Pages active: 500000 Pages inactive: 300000 Pages wired down: 150000
ページサイズ(通常 4096 バイト)をかけると実際のバイト数になります。手軽に確認するなら top の表示が読みやすいです。
# メモリ使用量を1行で確認 top -l 1 | grep PhysMem
PhysMem: 8192M used (1800M wired, 500M compressor), 200M unused.
ディスク使用状況を確認する(df)
df(disk free)はファイルシステム全体の空き容量を表示します。Linux・macOS 共通で使えます。
# 全ファイルシステムをまとめて確認 df -h
Filesystem Size Used Avail Use% Mounted on /dev/sda1 50G 18G 30G 38% / tmpfs 7.7G 0 7.7G 0% /dev/shm
# カレントディレクトリのファイルシステムだけ確認 df -h . # 特定のパスを指定 df -h /var/log
ディレクトリごとの使用量を確認する(du)
df がファイルシステム全体を見るのに対し、du はディレクトリ単位の使用量を確認します。
# カレントディレクトリ直下の各フォルダのサイズ du -sh * # 合計だけ表示 du -sh . # 特定ディレクトリの中身をサイズ順に確認 du -sh /var/log/* | sort -h
4.0K access.log 120M app.log 1.2G archive/
CPU 情報を確認する
Linux:lscpu
lscpu
Architecture: x86_64 CPU(s): 8 Thread(s) per core: 2 Core(s) per socket: 4 Model name: Intel(R) Core(TM) i7-9750H CPU MHz: 2592.000
コア数だけ素早く確認したい場合は nproc が便利です。
nproc # → 8(論理コア数)
詳細を直接見る場合は /proc/cpuinfo を確認します。
# CPU モデル名だけ取り出す grep "model name" /proc/cpuinfo | head -1 # → model name : Intel(R) Core(TM) i7-9750H CPU @ 2.60GHz # 論理コア数を数える grep -c "processor" /proc/cpuinfo # → 8
macOS:sysctl
# CPU モデル名 sysctl -n machdep.cpu.brand_string # → Apple M3 Pro # 物理コア数 sysctl -n hw.physicalcpu # → 12 # 論理コア数(ハイパースレッディング含む) sysctl -n hw.logicalcpu # → 12
稼働時間と負荷を確認する(uptime)
uptime
10:32:01 up 3 days, 2:15, 2 users, load average: 0.52, 0.48, 0.45
| 項目 | 意味 |
|---|---|
| up 3 days | 起動してから3日経過 |
| load average: 0.52, 0.48, 0.45 | 直近1分・5分・15分の平均負荷 |
load average はコア数と比較して判断します。コア数が4の場合、4.0 が100%の状態です。通常は 1.0 未満が理想的です。
まとめ
| コマンド | OS | 用途 |
|---|---|---|
uname -m |
Linux / macOS | アーキテクチャ確認(arm64・x86_64) |
uname -a |
Linux / macOS | OS・カーネル・ホスト名を一括確認 |
sw_vers |
macOS | macOS バージョン詳細 |
free -h |
Linux | メモリ使用状況(available を見る) |
vm_stat |
macOS | メモリ使用状況 |
top -l 1 | grep PhysMem |
macOS | メモリを1行で確認 |
df -h |
Linux / macOS | ディスク空き容量 |
du -sh * |
Linux / macOS | ディレクトリ別の使用量 |
lscpu |
Linux | CPU 詳細(コア数・モデル名) |
nproc |
Linux | 論理コア数だけ確認 |
grep "model name" /proc/cpuinfo |
Linux | CPU モデル名 |
sysctl -n machdep.cpu.brand_string |
macOS | CPU モデル名 |
sysctl -n hw.physicalcpu |
macOS | 物理コア数 |
uptime |
Linux / macOS | 稼働時間と負荷(load average) |
使用中のポートやプロセスを確認するには lsof コマンドが便利です。「lsof コマンドの使い方:使用中のポートとプロセスを調べる」も参照してください。