ねもぷらす

ふぁいんでぃんぐねもの日記。プログラミングとか育児とか

リソース使用率の測定とトラブルシューティング

リソース測定のコマンド

mac os の vmstat は vm_stat

CPU

システム全体
  • top
  • iostat
  • mpstat -P または mpstat -ALL
  • vmstat
  • sar -u | -P または mpstat -ALL
プロセス単位
  • top
  • ps u[ax]
Load Average (負荷平均)

物理メモリ

システム全体
  • top
  • free
  • vmstat
  • sar -r
プロセス単位
  • top
  • ps u[ax]

スワップ領域

使用状況
  • top
  • free
  • vmstat
  • sar -r
  • swapon -s
スワップイン・アウト状況
  • vmstat

ディスクI/O

  • iostat
  • vmstat
  • sar -b

ネットワークI/O

  • netstat -i | -s
  • sar -n DEV | EDEV

プロセスのPID

  • pstree -p
  • ps u[ax]
  • top
  • lsof

sar [オプション] [表示間隔(秒) [回数]]

オプション 概要
-P CPU番号 or ALL 指定したCPUの使用率
-r 物理メモリとスワップ使用量
-b ディスクI/O
-n DEV ネットワークI/O正常パケット
-n EDEV 〃 エラーパケット
-f データを取り出すログファイルを指定

カーネルのmake install

1. ビルドしたカーネルイメージファイル bzImage を vmlinuz-(VERSION) という名前で /boot に置く

2. System.map を同様にSystem.map-(VERSION) という名前で /boot に置く

3. /boot/vmlinuz, /boot/System.map というバージョンがつかない名前でもアクセスができるよう、シンボリックリンクを貼る

4. 必要に応じて mkinitramfs または mkinitrd で初期 RAM ディスクを作成し、/boot/initrd.img-(VERSION) とする

5. ブートローダに新しいカーネル用の設定を追加する。GRUB Legacyならば /boot/grub/menu.lst、GRUB2 ならば /etc/grub.d/ ディレクトリ配下のファイルなどを適切に編集する(GRUB2 ではさらに update-grub コマンドで、設定内容を /boot/grub/grub.cfg 設定ファイルに反映させること)