dshimizu/blog

アルファ版

Linux系OSの状態を確認するコマンドたち

Linux系OSでのシステムの状態を確認する際に使うコマンドをメモがてら記載しておく。

ログインした直後に見ること

サーバの起動時刻を見る。

:$ uptime

サーバのホスト名等を見る。

:$ uname -a

現在ログイン中のユーザを見る。

:$ w

全体の情報を見る

:$ dstat -af
:$ sar -A 1

ロードアベレージを見る

:$ uptime
:$ sar -q 1
:$ top

CPU使用率を見る

topコマンドでCPU使用率を見る

:$ top

※top実行中にshift m : メモリ使用率順にソート ※top実行中にshift p : CPU使用率順にソート ※top実行中にshift t : 実行時間順にソート ※top実行中にshift h : スレッド表示 ※top実行中に 1 : コア数表示

実行されているコマンドの内容をフルパスで出力させる。

:$ top -c (-d1)

バッチモードで実行させる。

:$ top -b

mpstatコマンドでCPU使用率を見る

:$ mpstat -P ALL 1

vmstatコマンドでCPU使用率を見る

:$ vmstat 1

pidstatコマンドでCPU使用率を見る

:$ pidstat 1
:$ pidstat -p [pid]
:$ pidstat -C [process name]

dstatコマンドでCPU使用率を見る

-tで時刻表示、-aですべてのデータを報告。 --top-cpuでプロセスが私用しているCPU使用率の統計を報告。

:$ dstat -ta --top-cpu

コア単位の使用率を見る場合。

:$ dstat -C 0,1

コア単位+全CPUの使用率を見る場合。

:$ dstat -C 0,1,total

sarでCPU使用率を見る。

:$ sar -P ALL 1

メモリ使用状況を見る

freeコマンドでメモリ使用率を見る

:$ free -m

vmstatコマンドでメモリ使用率を見る

:$ vmstat 1
:$ sar -r 1
:$ sar -R 1

/proc/meminfoの中身を探ってメモリ使用率を見る

:$ grep -E 'Active:|Slab:|VmallocUsed:|PageTables:|KernelStack:' /proc/meminfo |  awk '{a+=$2} END{print a;}'

IOの状態を見る

vmstatコマンドでIOの状態を見る

:$ vmstat -d 1

pidstatコマンドでIOの状態を見る

:$ pidstat -d

iostatコマンドでIOの状態を見る

:$ iostat -tx 1
:$ iostat -txz 1

dstatコマンドでIOの状態を見る

--top-io-adv, --top-bio-advオプションはVersion 7.2.0以降から。

:$ dstat -ta --top-io-adv --top-bio-adv

sarコマンド(sysstat)でIOの状態を見る

IOPS等の状態を全体的に見る。

:$ sar -b 1

バイス単位でIOPS等の状態を見る。

:$ sar -d 1
:$ sar -d -p 1

Networkの状態を見る

ssコマンドでIOの状態を見る

TCPのLISTENポートを見る。

:$ ss -lnt
:$ sudo ss -anpto

dstatコマンドでネットワークの使用状態を見る

:$ dstat -n -N [nic device]

sarコマンドでネットワークの使用状態を見る

$ sar -n DEV 1

ストレージの情報を見る

:$ df -h
:$ df -i
:$ df -hTi

実行されているプロセスの情報を見る

:$ ps auxfwww
:$ ps -ef
:$ ps auxwww -L
:$ sudo lsof -p [pid]

システムログを見る

:$ sudo less /var/log/message
:$ sudo less /var/log/syslog

エラー系メッセージのみ抽出する場合

:$ sudo grep -iE 'warn|err|crit|fatal|emerg|alert' /var/log/message
:$ sudo grep -iE 'warn|err|crit|fatal|emerg|alert' /var/log/syslog

参考