2017年10月23日月曜日

トラブルシューティングで使うコマンド


ping

指定したホストとの間でネットワークが疎通しているかどうかを調べる
http://www.atmarkit.co.jp/ait/articles/1709/14/news018.html

traceroute

あるホストから別のホストまでのネットワーク経路を調べる
http://www.atmarkit.co.jp/ait/articles/0108/30/news003.html

netstat

ホストのネットワーク接続状態やソケット/インターフェイスごとのネットワーク統計などを調べる
※ CentOS7は非推奨なので ss コマンドを使用
http://www.atmarkit.co.jp/ait/articles/1412/10/news003.html

route

IPパケットをルーティングするためのルーティングテーブルを調べる
※ CentOS7は非推奨なので ip コマンドを使用

ifconfig

ネットワークインターフェースの設定や現在の設定内容を表示
※ CentOS7は非推奨なので ip コマンドを使用

dig

DNSサーバーが正常に動作しているかどうか確認したい、問題がどこにあるかを突き止めたい、そんな時に「dig」を利用します
http://www.atmarkit.co.jp/ait/articles/1409/25/news001.html

tcpdump

ネットワーク上を走っているパケットを閲覧するためのプログラム(パケットキャプチャツール)として利用。tcpdump でキャプチャした情報をファイルに保存して、WaireSharkで見ることが多い。 
http://itpro.nikkeibp.co.jp/article/COLUMN/20140512/556024/
https://knowledge.sakura.ad.jp/6286/

ss

ネットワーク通信で利用する「ソケット」についての情報などを調べる
http://www.atmarkit.co.jp/ait/articles/1710/06/news014.html

telnet

TCPポートへの接続確認や、SMTPでのメール送信確認などに利用できる。
http://itpro.nikkeibp.co.jp/article/COLUMN/20060425/236322/
http://ash.jp/net/telnet_smtp.htm

curl

WEBサイトの動作確認で利用できる。
https://qiita.com/yasuhiroki/items/a569d3371a66e365316f

sar

サーバのCPUやメモリ、DISK IOなどの様々な情報のモニタリングが可能です。
Ksar を使ってグラフ化して見ることが多いです。

dstat

CPUやメモリ、ディスクやCPU割り込みといったハードウエアの他、ネットワークの状態も監視できる。
http://www.atmarkit.co.jp/ait/articles/1506/01/news152.html

file

ファイル形式や文字コードを調べる。coreファイルを出力したプログラムを調べる。
http://www.atmarkit.co.jp/ait/articles/1605/10/news018.html

ldd

指定したプログラムの実行に必要な共有ライブラリを調べる
http://itpro.nikkeibp.co.jp/article/COLUMN/20140127/532486/

strings

バイナリファイルやデータファイルから“文字列”として読める箇所を表示する
指定したバイナリ/データファイル内にある表示可能な文字列が、標準出力に出力される
http://www.atmarkit.co.jp/ait/articles/1703/09/news038.html

fuser

ファイルやソケットを使用しているプロセスを調べる
https://open-groove.net/linux-command/fuser/

lsof

特定のポートやファイルを使用しているプロセスを調べる
https://qiita.com/hypermkt/items/905139168b0bc5c28ef2

strace

プロセスが呼び出すシステムコールをトレースし、その内容を表示することができる
http://blog.livedoor.jp/sonots/archives/18193659.html

ps

実行中のプロセスの一覧を表示する
http://www.atmarkit.co.jp/ait/articles/1603/28/news022.html

watch

指定したコマンドを定期的に実行する。
下記例では、ssコマンドでTCPコネクションの状態を取得し、各状態が何件あるかを1秒間隔で表示する。
# watch -n1 'ss -at | cut -d " " -f 1 | sort | uniq -c'
Every 1.0s: ss -at | cut -d " " -f 1 | sort | uniq -c                                        Sat Oct 21 22:08:47 2017
      1 ESTAB
      4 LISTEN
      1 State