top・kill・nohupで学ぶプロセス管理|ターミナル応用テクニック|UNIX Cafe

当サイトでは、コンテンツの一部に広告を掲載しています。
top・kill・nohupで学ぶプロセス管理|ターミナル応用テクニック|UNIX Cafe

UNIX Cafe | 第19回

目次

top・kill・nohupで学ぶ|プロセスをやさしく管理する UNIX の基本

Linux や UNIX のサーバーの中では、
目に見えないところで、たくさんの プロセス が動いています。

Web サイトを表示する処理、ログを記録する処理、
バックグラウンドで続く長い作業、それぞれが役割を持った「働き手」です。

この記事では、

  • top で いま何が動いているか を確認し
  • kill で 必要なときに止める・休ませる方法 を知り
  • nohup で ログアウト後も作業を続ける仕組み を理解する

という流れで、UNIX における基本的なプロセス管理 をやさしく解説します。

カフェには“働き手(プロセス)”がたくさん

ミナちゃん

サーバーの中って、そんなにたくさんの仕事が動いているんですか?

サーバーの中では、
ひとつのアプリだけが動いているわけではありません。

UNIX では、
動いている処理ひとつひとつを プロセス と呼びます。

これは、カフェで例えるなら、

  • コーヒーを淹れる人
  • 料理を準備する人
  • 会計を担当する人

のように、役割ごとに分かれて働いているスタッフ のような存在です。

まずは状況を確認する|top コマンド

プロセス管理で最初に行うべきことは、「いま何が動いているのか」を知ることです。

そのためのコマンドが top です。

top

top を実行すると、

  • 実行中のプロセス一覧
  • CPU やメモリの使用状況
  • どのプロセスが負荷をかけているか

を リアルタイムで確認 できます。

終了するときは q を押します。

働きすぎのプロセスを止める|kill コマンド

ミナちゃん

もし、明らかに重いプロセスがあったらどうすればいいですか?

そのような場合に使うのが kill コマンドです。

kill 12345

この数字は PID(プロセスID) で、
どのプロセスに指示を送るかを指定しています。

重要なのは、kill は「強制終了」だけのコマンドではない、という点です。

通常は、

  • プロセスに 終了の合図(SIGTERM) を送り
  • プロセス自身が後始末をして終了します

どうしても止まらない場合のみ、kill -9(SIGKILL)を使います。

ログアウト後も処理を続ける|nohup

長時間かかる処理を実行するとき、
ターミナルを閉じると止まってしまうことがあります。

そんなときに使うのが nohup です。

nohup ./make_cake.sh &

このコマンドを使うと、

  • ターミナルを閉じても
  • ログアウトしても

処理がバックグラウンドで継続されます。

サーバー作業では、
とてもよく使われる基本テクニックです。

プロセスID(PID)とは?

kill や top で必ず登場するのが PID です。

PID は、プロセスひとつひとつに割り当てられた番号 です。

一覧で確認するには、次のコマンドも使えます。

ps aux

PID を正しく指定することで、
必要なプロセスだけに操作を行う ことができます。

まとめ|プロセスを「やさしく」管理する

ミナちゃん

無理に止めるんじゃなくて、様子を見ながら管理するんですね。

UNIX のプロセス管理で大切なのは、

  • まず top で状況を見る
  • 必要なときだけ kill を使う
  • 長い処理は nohup で任せる

という 順序と考え方 です。

プロセスは敵ではなく、サーバーを支えてくれる「働き手」。

やさしく見守れるようになると、
UNIX の操作はぐっと安心感のあるものになります。

さらに学びたいあなたへ

📘 用途ごとに選ぶ Linux のおすすめ本

あわせて読みたい
レベル・用途別おすすめ Linux 本リスト|UNIX Cafe UNIX Cafe | 第65回 Linux の世界には、「はじめて触る人」「コマンドを覚えはじめた人」「サーバーに挑戦したい人」と、さまざまな段階があります。そんなときに、自分...
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

のいのアバター のい UNIX Cafe 編集部

UNIX Cafe は、むずかしい言葉をできるだけ使わず、物語を読むような気持ちで気軽に学べる場所です。
プログラミングは、アイデアをコンピューターに伝えるための「ことば」。
簡単な単語と文法を覚えることで、誰でもターミナルから便利なコマンドを使えるようになります。
コーヒーを片手に立ち寄るような気持ちで、やさしいプログラミングの世界を、
そっとのぞいてみてください。

目次