実は
killallコマンドのシグナル名はディストリビューションによって異なる場合があり、killコマンドとは仕様が異なることもある。そのためkillall -lで使用可能なシグナル一覧を事前に確認してから使うのが安全だ。本記事では
killall -lの使い方と、killコマンドとの違い、注意点を解説する。・killall -l でシグナル一覧を確認する方法
・killall と kill のシグナル名の違い
・killall でシグナルを指定して実行する方法
・ディストリビューションによる違いへの対処法
でも安心してください。プロのエンジニアはコマンドを暗記していません。
「現場で使える型」を効率よく使いこなしているだけです。
killall -l の基本的な使い方
killall -lを実行すると、そのシステムのkillallコマンドで使用可能なシグナル名の一覧が表示される。[root@Tiger ~]# killall -l HUP INT QUIT ILL TRAP ABRT BUS FPE KILL USR1 SEGV USR2 PIPE ALRM TERM STKFLT CHLD CONT STOP TSTP TTIN TTOU URG XCPU XFSZ VTALRM PROF WINCH IO PWR SYS
kill -lと比べて表示形式が異なり、番号なしで名前のみが表示される点が特徴だ。killall でシグナルを指定して実行する
シグナルを指定する場合は
-sオプションを使うか、シグナル名に-を付けて指定する。[root@Tiger ~]# killall -s HUP httpd ←SIGHUPを送る [root@Tiger ~]# killall -HUP httpd ←同じ意味の別の書き方 [root@Tiger ~]# killall -9 httpd ←番号でSIGKILLを指定する
kill との指定方法の違い
| コマンド | シグナル指定例 | 対象指定 |
|---|---|---|
kill | kill -9 PID | PID番号 |
killall | killall -9 コマンド名 | コマンド名 |
シグナル番号での指定はどちらも共通して使えるが、シグナル名はkillallの場合
SIGプレフィックスなしで指定するディストリビューションが多い。ディストリビューションによる違いへの注意
killallコマンドはディストリビューションに収録されているバージョンによって、シグナル名が同じでも微妙な動作の違いがある場合がある。本番環境で使う前に必ず
killall -lでそのシステムで有効なシグナル名を確認しておくことを推奨する。まとめ
| コマンド例 | 動作 |
|---|---|
killall -l | 使用可能なシグナル名の一覧を表示する |
killall -9 コマンド名 | SIGKILLで強制終了する |
killall -s HUP コマンド名 | SIGHUPを送る |
killall -HUP コマンド名 | SIGHUPを送る(別の書き方) |
killall -lはそのシステムで使えるシグナルを確認する最も確実な方法だ。特に異なるディストリビューションのサーバーを管理する場合は、事前に確認する習慣をつけておこう。
Linuxのプロセス管理をもっと体系的に学びたくないですか?
コマンドの断片を覚えるだけでは、本番環境のトラブルには対応できません。
ネットの切れ端の情報をコピペするだけでなく、現場で通用する安全なLinuxサーバー構築の「型」を体系的に身につけたい方へ、『Linuxサーバー構築入門マニュアル(図解60P)』を完全無料でプレゼントしています。
「独学の時間がもったいない」「プロから直接、現場の技術を最短で学びたい」という本気の方には、2日で実務レベルのスキルが身につく【初心者向けハンズオンセミナー】も開催しています。
3,100名以上が実践した「型」を無料で公開中
プロのエンジニアはコマンドを暗記していません。
「現場で使える型」を効率よく使いこなしているだけです。
その「型」を図解60Pにまとめた入門マニュアルを、完全無料でプレゼントしています。
登録10秒/合わなければ解除3秒 / 詳細はこちら
- 次のページへ:ランレベルごとのサービス起動と停止状況を表示する(chkconfig)
- 前のページへ:killコマンドで使用できるkillシグナルを表示する(kill -l)
- この記事の属するカテゴリ:Linuxtips・システム管理へ戻る

無料メルマガで学習を続ける
Linuxの実践スキルをメールで毎週お届け。
登録は1分、解除もいつでも可。
登録無料・いつでも解除できます