プロセスの管理:`kill`、`bg`、`fg`
コマンドラインからプロセスを終了、一時停止、再開する方法を学びます。
「プロセスの管理:`kill`、`bg`、`fg`」はCoddyKit上の無料Linux Command Line Masteryレッスンです。 これはレッスン2/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはLinux Command Line Mastery学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Linux Command Line Masteryコースには全4レッスンが含まれています。
このレッスンの一部はまだ翻訳されておらず、英語で表示されています。
Introduction to Process Control
In Linux, every running program is called a process. Managing these processes is essential for system efficiency and troubleshooting.
This lesson teaches you how to take control of processes: suspending them, sending them to the background, bringing them forward, and even terminating them when they misbehave.
The `kill` Command Basics
The kill command is used to send signals to processes. Its primary use is to terminate processes.
To use kill, you need the Process ID (PID) of the target process. You can find PIDs using commands like ps (covered in a previous lesson).
ps aux | grep sleepGraceful Termination: `SIGTERM`
By default, kill sends the SIGTERM (signal 15) signal. This is a polite request for a process to terminate.
A well-behaved program will catch SIGTERM, perform any necessary cleanup (like saving files), and then exit gracefully.
sleep 30 &
# Use 'ps' to find the PID of 'sleep 30'
# Example: kill <PID_OF_SLEEP>Forceful Termination: `SIGKILL` (-9)
Sometimes, a process might ignore SIGTERM, becoming unresponsive or 'frozen'. In such cases, you need to use a stronger signal: SIGKILL (signal 9).
SIGKILL immediately terminates the process without allowing it to clean up. Use it as a last resort!
sleep 60 &
# Use 'ps' to find the PID of 'sleep 60'
# Example: kill -9 <PID_OF_SLEEP>Suspending Processes with Ctrl+Z
You can temporarily pause a running foreground process using the keyboard shortcut Ctrl+Z.
This sends a SIGSTOP signal, suspending the process and returning control to your shell. The process is still in memory but not executing.
sleep 120
# Type 'sleep 120' and then press Ctrl+Z
# You will see '[1]+ Stopped sleep 120'Listing Jobs with `jobs`
When you suspend a process or send it to the background, it becomes a 'job'. You can list all current jobs managed by your shell using the jobs command.
Each job is assigned a job number, which is useful for referring to it with other commands.
sleep 30
# Press Ctrl+Z
jobsBackgrounding a Job: `bg`
A suspended process isn't running. To make it run in the background (without occupying your terminal), use the bg command.
You can refer to the job by its job number (e.g., bg %1). The process will continue running silently.
sleep 60
# Press Ctrl+Z
jobs
bg %1
jobsForegrounding a Job: `fg`
If you have a process running in the background or a suspended one, you can bring it back to the foreground to interact with it using the fg command.
Like bg, you specify the job number (e.g., fg %1) to bring that specific job to the front.
sleep 60 &
jobs
fg %1
# Press Ctrl+C to stop it or Ctrl+Z to suspend it again.Combining Process Control
These commands work together to give you full control over processes:
- Start a task:
nano - Suspend it:
Ctrl+Z - Move to background:
bg %1 - Start another task:
sleep 100 - Suspend it:
Ctrl+Z - List all jobs:
jobs - Bring
nanoto foreground:fg %1 - Terminate
nano:Ctrl+C - Kill
sleep:kill %2
Quick Check
You've started a program, and it's completely unresponsive. You can't even close it with Ctrl+C. You know its Process ID (PID).
What is the most effective command to immediately terminate this stubborn process?
Recap: Process Control
Great job! You've learned how to manage processes effectively:
kill: Send signals to terminate processes.kill -9: Forcefully terminate a process.Ctrl+Z: Suspend a foreground process.jobs: List background and suspended jobs.bg: Send a suspended job to the background.fg: Bring a background job to the foreground.
These commands are crucial for maintaining control over your Linux environment.
よくある質問
「プロセスの管理:`kill`、`bg`、`fg`」レッスンは無料ですか?
はい。「プロセスの管理:`kill`、`bg`、`fg`」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Linux Command Line Masteryコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Linux Command Line Masteryコースには全4レッスンが含まれています。
「プロセスの管理:`kill`、`bg`、`fg`」で何を学びますか?
コマンドラインからプロセスを終了、一時停止、再開する方法を学びます。 ブラウザで直接実行するハンズオンコードでLinux Command Line Masteryを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。
Linux Command Line Masteryを始めるのに経験は必要ですか?
事前経験は必要ありません。CoddyKitのLinux Command Line Masteryは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン2/4です。
「プロセスの管理:`kill`、`bg`、`fg`」レッスンにはどのくらい時間がかかりますか?
ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。
このLinux Command Line Masteryレッスンでコードを書いて実行できますか?
はい。すべてのLinux Command Line Masteryレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。
このコースのすべてのレッスン
- プロセスの理解:`ps`、`top`、`htop`
- プロセスの管理:`kill`、`bg`、`fg`
- システムリソースの監視:`df`、`du`、`free`
- nice、renice、シグナルでプロセス優先度を扱う