Process management is one of the important aspects of System Administration in Linux, and it includes the killing of processes using the kill command.
What is a Process in Linux?
A process on a Linux system can be a running occurrence of an application or program. You can also refer to processes as tasks executing in the operating system.
When a process is running, it keeps on shifting from one state to another and a process can in one of the following states:
- Running: meaning the process is either executing or it is just set to be executed.
- Waiting: meaning that the process is waiting for an event or for a system resource to carry out a task.
There are two types of waiting process under Linux namely interruptible and uninterruptible.
A waiting process that can be interrupted by signals is called Interruptible, while a waiting process that is directly waiting on hardware conditions and cannot be interrupted under any conditions is called uninterruptible.
- Stopped: meaning that the process has been stopped, using a signal.
- Zombie: meaning the process has been stopped abruptly and is dead.
When killing processes, the kill command is used to send a named signal to a named process or groups of processes. The default signal is the TERM signal.
Remember that the kill command can be a built-in function in many modern shells or external located at /bin/kill.
How to Find Process PID in Linux
In Linux, every process on a system has a PID (Process Identification Number) which can be used to kill the process.
You can identify the PID of any process by using the pidof command as follows:
$ pidof firefox $ pidof chrome $ pidof gimp-2.8
How to Kill Processes in Linux
Once you find the process PID, let us now look at how to kill processes. In this first example, I am going to first get the PID of the process and then send a signal to it.
I want to kill gimp process, so I will do it as follows:
$ pidof gimp-2.8 $ kill 9378
To verify that the process has been killed, run the pidof command and you will not be able to view the PID.
$ pidof gimp-2.8
You can also send a named signal to the process by using the signal name or numbers as follows:
$ pidof vlc $ kill -SIGTERM 9541 $ pidof vlc
Using the signal number to kill a process:
$ pidof banshee $ kill -9 9647 $ pidof banshee
In the above example, the number 9 is the signal number for the SIGKILL signal.
How to Kill Multiple Process PID’s in Linux
To kill more than one process, pass the PID(s) to the kill command as follows:
$ pidof gimp-2.8 $ pidof vlc $ pidof banshee $ kill -9 9734 9747 9762