Some processes can cause memory leaks and lead to system performance degradation. For instance, VLC is known to have this problem. Leaving aside memory leaks, you might sometimes need to manually kill a process that’s not responding. There are different ways to do this; some more graceful than others. Should You Stop, End, or Kill a Process? You can list the various signals you can send to a process with kill -l The ones relevant to us are SIGHUP (1), SIGINT (2), SIGKILL (9), SIGTERM (15), and SIGSTOP (19). SIGHUP (1) – Sends a signal that the controlling terminal or process hanged up. This’ll usually cause the process to shut down. SIGINT (2) – Send an interrupt signal to the process. SIGKILL (9) – Immediately kill the process. SIGTERM (15) – Gracefully terminate a process, giving it the chance to perform cleanup tasks before shutting down. SIGSTOP (19) – Stop the process in its current state. SIGSTOP only pauses the process. Sometimes that’s useful, but when you need to actually kill the process, it’s not relevant. SIGTERM allows a process to run any appropriate handlers to terminate properly, whereas SIGKILL abruptly kills a process. Due to data loss and inconsistency concerns, we recommend using SIGTERM whenever possible. Kill with System Monitor The System Monitor allows you to graphically manage processes through an easy-to-use applet. Search and open ‘System Monitor’ and right-click the process to manage. Stop (SIGSTOP), End (SIGTERM), or Kill (SIGKILL) the process as appropriate. Get PID and Kill Process There are a couple of easy ways to get the process ID (PID) of the process you want to kill. First, you could name the program with pidof. pidof firefox You can also use the ps command to list every active process on the system, then filter the output with grep. ps -ef | grep firefox Once you know the PID, you can use the following format to kill the specified processes. sudo kill pid sudo kill 12756 5532 By default, this will send the TERM (15) signal. If you want to send a KILL (9) or some other signal instead, you can do so by specifying the signal name or number. Any of these formats will have the same effect. sudo kill -9 12756 sudo kill -KILL 12756 sudo kill - SIGKILL 12756 Kill Processes with killall Some programs might spawn hundreds of processes, and trying to kill each one individually isn’t very practical. Instead, you can use the killall command to kill all processes related to the specified name. sudo killall firefox By default, this sends SIGTERM. If you want to send a different signal, you can specify it with the -s option. sudo killall -s 9 firefox killall also has other useful options such as the process-group (-g) flag, which kills the process group to which the process belongs, or the user (-u) flag, which kills processes owned by the specified user. Use htop to Find and Kill Processes htop is an interactive process manager that can also be used to kill processes. On new systems, you might need to install it first. sudo apt install htop Launch it by entering htop and press F3 to search for the process. Press F3 again and cycle through the listed processes. While the process is selected, press F9 twice. Select the signal to send and press Enter.