Linuxでプロセスや利用ポートを調査する

Linuxでプロセスや利用ポートを調査する

プロセスや利用ポートを調査することがよくあるんですが、忘れてしまうことがあるためメモしておきます。お役に立てれば幸いです。

プロセスの調査

以下のコマンドを実行します。

ps aux
  • a  →  自分以外のユーザーのプロセスも表示
  • u  →  ユーザー名と開始時刻を表示
  • x  →  制御端末のない( tty ) プロセスの情報も表示

表示される主な項目

  • USER → プロセスの実行ユーザー
  • PID → プロセスID
  • %CPU → プロセスのCPU使用率
  • %MEM → プロセスが確保している物理メモリ
  • VSZ  →  メモリ使用サイズ
  • RSS  →  メモリの実際の使用サイズ
  • TTY  →  端末の名称
  • STAT  →  プロセスの状態
  • START →  プロセスの開始時刻
  • TIME → プロセスの総実行時間
  • COMMAND →  実行コマンド名とパス(シェル表記の場合もあり)

特定のプロセスを調査

特定のプロセスを指定して確認することも可能です。

## serviceという文字列含むプロセスを調査
ps aux | grep service

## プロセスの強制終了
kill プロセスID

プロセスが利用しているポートを調査

「lsof -i」でポート番号を指定することで調査することができます。

lsof -i

## 利用しているポートのプロセスを調査
lsof -i:ポート番号

接続待ちをしているポートを確認

「netstat」を使用すれば接続待ちしているポートを確認できます

netstat -ltunp4
  • -l  →  Listenしているポートを表示
  • -t  →  TCPを表示
  • -u  →  UDPを表示
  • -n →  ポートやホストを数値で表示
  • -p →  ポートを開いているプロセスを表示
  • -4 →  IPv4のみ
  • -6 →  IPv6のみ