今回はLPICでよくある質問集の第②回の続きになります。
それでは早速よくある質問ドドーン!
Q2「LPICに出てくるLinuxコマンドってどうやって覚えるんですかー?」
LPICの学習をしているとよく苦戦するのが、数多くあるLinuxコマンドの暗記であります。
Linuxコマンドを覚えることは一番はコマンドを打って覚えることですが、そのきっかけとしてコマンドの由来がどこから来ているのか、ということを知るのは非常に有効な手段になります。
Linuxコマンドはだいたい何かの略称となっています。
今回はその5回目!
これを見てコマンドを暗記していきましょう~!
今回はプロセス管理コマンドたちの語源がなんなのか、見ていきます!
それではスタートです!
■プロセス管理コマンド
・ps
語源:process(プロセス)
意味:現在実行されているプロセスを表示する
書式:ps [オプション]
説明:
現在実行されているプロセスのスナップショットを表示するコマンド。
オプションを使うと、デーモンのプロセスを表示したり、全てのユーザのプロセスを表示したり、プロセスをツリー状に表示したりすることができる。
psというコマンド名は、プロセス(ProceSs)を表示するところからきている。
・pstree
語源:process tree(プロセスツリー)
意味:プロセスのツリーを表示する
書式:pstree [オプション]
説明:
現在実行されているプロセスをツリー状に表示するコマンド。
オプションを使うと、PID付きでプロセスをツリー形式で表示できたり、PIDを指定するとそのPIDを起点としてツリー形式で表示できたりする。
pstreeというコマンド名は、プロセス(ProceSs)をツリー(TREE)形式で表示するところからきている。
・free
語源:free memory(空きメモリ)
意味:メモリの使用状況を表示するコマンド
書式:free [オプション]
説明:
システムの空きメモリと利用メモリの容量を表示するコマンド。
システムの物理メモリとスワップそれぞれに対して、合計容量と使用量と空き容量を表示し、カーネルが使っているバッファも表示する。
freeというコマンド名は、メモリの空き容量(FREE memory)を表示するところからきている。
・vmstat
語源:virtual memory statistics(仮想メモリ統計)
意味:仮想メモリの統計情報を報告する
書式:vmstat [時間間隔] [回数]
説明:
メモリおよび仮想メモリの統計情報を表示するコマンド。
時間間隔や回数を指定して、メモリや仮想メモリの状態を継続的に監視することもできる。
vmstatというコマンド名は、仮想メモリ(Virtual Memory)の統計(STATistics)情報を表示するところからきている。
・fuser
語源:file user(ファイル・ユーザ)
意味:ファイルやソケットを使用しているプロセスを特定する
書式:fuser [オプション] [ファイル名]
説明:
ファイルやソケットを使用しているプロセスを特定し、そのPIDを表示する。
デフォルトだとアクセスの形式を示す文字も表示する。
オプションを使うとTCPとUDPのソケットを使用している開いているプロセスをを探すことができるので、開いているポートの確認も行うことができる。
fuserというコマンド名は、ファイル(File)を使っている人(USER)を調べることができるところからきている。
・pgrep
語源:process grep(プロセスgrep)
意味:現在実行中のプロセスを調べ、検索パターンにマッチするプロセスのPIDを表示する
書式:pgrep [オプション] [検索パターン]
説明:
現在実行中のプロセスを調べ、検索パターンにマッチするプロセスのPIDやプロセス名を表示するコマンド。
現在実行中のプロセスから特定の名前を持つプロセスのPIDを検索することができる。
ちなみにgrepコマンドは、ファイル等から指定した検索パターンに一致した行を表示するコマンドである。
grepコマンドの由来は、Global Regular Expression Printである。
pgrepというコマンド名は、実行中のプロセス(Process)に対して検索パターンで検索(GREP)を行うところからきている。
・pkill
語源:process kill(プロセスkill)
意味:現在実行中のプロセスを調べ、検索パターンにマッチするプロセスにシグナルを送信する
書式:pkill [-シグナル名orシグナルID] [検索パターン]
説明:
現在実行中のプロセスを調べ、検索パターンにマッチする各プロセスに指定したシグナルを送信するコマンド。
デフォルトではSIGTERMが送信される。(これはSIGnal TERMinateの略)
指定できるシグナル名はkillコマンドと同じ。
ちなみにkillコマンドは、プロセスに対してシグナルを送信し、終了や強制終了、ハングアップなどを行うコマンドである。
pkillというコマンド名は、実行中のプロセス名(Process)に対して検索パターンでシグナルを送信する(KILL)ところからきている。
・fg
語源:foreground(フォアグラウンド)
意味:指定したジョブをフォアグラウンドで実行する
書式:fg [ジョブ番号]
説明:
一時停止中またはバックグラウンドで実行中のジョブをフォアグラウンドに切り替え実行するコマンド。
ジョブ番号が分からないときはjobsコマンドで調べる。
fgというコマンド名は、ジョブをフォアグラウンド(ForeGround)に切り替えるところからきている。
・bg
語源:background(バックグラウンド)
意味:指定したジョブをバックグラウンドで実行する
書式:bg [ジョブ番号]
説明:
一時停止中のジョブをバックグラウンドに切り替え実行するコマンド。
bgというコマンド名は、ジョブをバックグラウンド(BackGround)に切り替えるところからきている。
・nohup
語源:no hungup(ハングアップ無し)
意味:ハングアップに反応しないようにしてコマンドを実行する
書式:nohup [コマンド]
説明:
通常ジョブをバックグラウンドで実行中にログアウトすると、シェルの子プロセスであるジョブにもSIGHUPシグナルが送信され、同時に終了してしまう。
そのようなときにログアウト後もジョブを実行させ続けたいときに使うコマンド。
SIGHUPというのは、制御端末のハングアップ検出、または制御しているプロセスの終了を意味するシグナルである。(SIGnal Hang UPの略)
nohupコマンドで起動されたプロセスは、SIGHUPを無視して動作される。
nohupというコマンド名は、ハングアップ(HangUP)に反応しない(NO)ようにコマンドを実行するところからきている。
以上、今回は10個のLPICに頻出なプロセス管理コマンドの由来を紹介しました!
コマンドの使い方が分からないときには、語源だけではなく、意味や書式、説明なんかのほうも見てみてください。
それではまた次回!乞うご期待!!!!!