各トラブル時の確認、対処方法
各トラブル時の確認、対処方法
CPUの負荷の状態を見る
CPUの負荷の状態は、wコマンドやuptimeコマンド、topコマンドなどを利用します。
これらコマンドが表示するロードアベレージを見ると、サーバーの負荷状態がわかります。
ロードアベレージは、CPUやI/Oを必要としているプロセスの数の平均値。
【簡単な目安】ロードアベレージが1を超えるとサーバーは忙しい状態で、1未満の場合は問題ない。
ロードアベレージがひどく上がっている場合は、何かのプロセスが暴走していると考えるべき
プロセスの状態を見る
CPUに負荷がかかっていることが確認できたら、負荷をかけているプロセスを探して、
場合によってはプロセスを終了させる必要があります。
プロセスの状態は、psコマンドやtopコマンドで見ることができます。
書式
ps [options] すべてのプロセスの詳細を表示する(ユーザ名表示)
[root@localhost ~]# ps axu USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND root 1 0.1 0.3 125484 3912 ? Ss 13:45 0:03 /usr/lib/system root 2 0.0 0.0 0 0 ? S 13:45 0:00 [kthreadd] root 4 0.0 0.0 0 0 ? S< 13:45 0:00 [kworker/0:0H]
図
トラブルが起こったとき
psコマンドの表示項目
ずっとCPU利用率が99%だったり、メモリの利用率が異常に増大しているプロセスは暴走している可能性があります。
プロセスの状態の監視
topコマンドを起動すると、3秒おきに画面が更新され、CPU使用率が大きい順で表示されます。
更新間隔や表示内容、表示順などは設定ファイルで変更できます。
終了するときはqキーを押します。
[root@localhost ~]# top
プロセスを強制終了させる
暴走してしまったプログラムは、強制終了させることができます。
①psコマンドを入力
[root@localhost ~]# ps axu | grep cupsd root 4121 0.0 0.0 112728 968 pts/0 R+ 14:36 0:00 grep --color=auto cups
書式
kill プロセス番号(PID)該当のプロセス番号のプロセスを終了する
[root@localhost ~]# kill 4121
図
ネットワークカードの状態を見る
ipコマンドを使うと、ネットワークカードの状態を見ることができます。
MACアドレスやカードに割り当てているIPアドレス、イーサーネットの情報などが観察できます。
[root@localhost ~]# ip -s addr 3: ens37: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 link/ether 00:0c:29:00:fc:9b brd ff:ff:ff:ff:ff:ff inet 192.168.135.129/24 brd 192.168.135.255 scope global noprefixroute dynamic ens37 valid_lft 1438sec preferred_lft 1438sec inet6 fe80::853f:8fa5:42f1:939e/64 scope link noprefixroute valid_lft forever preferred_lft forever RX: bytes packets errors dropped overrun mcast 44966 571 0 0 0 0 TX: bytes packets errors dropped carrier collsns 801025 673 0 0 0 0
図
ログを確認する
Linuxでは、各種サーバーの動作やカーネルのメッセージがログファイルに記録されます。
システムの管理者はログを見ることでさまざまな情報を得ることができます。
ログの保存場所
ログにはすべてが書かれている
- ログファイルの各行の先頭には、タイムスタンプ(日付情報)やホスト名、ログを出力したサーバーの名前などが記録されている。
- いつ、どこで、どのサーバーが記録したログなのかわかる。
- 無限ではなく一定数のログが保存される。