Linux

How To Use ps, kill, and nice to Manage Processes in Linux

How do I see all running process in Linux operating systems using command line or GUI options? How can I show all running Processes in Linux operating system?

Linux commands show all running processes in Linux

Apart from ps command, you can also use the following commands to display info about processes on Linux operating systems:

  1. top command : Display and update sorted information about processes.
  2. atop command : Advanced System & Process Monitor.
  3. htop command : Interactive process viewer.
  4. pgrep command : Look up or signal processes based on name and other attributes.
  5. pstree command : Display a tree of processes.

How to list process with the ps command

Type the following ps command to display all running process:

# ps -aux | less

OR

# ps aux | less

Where,

  • A : Select all processes
  • u : Select all processes on a terminal, including those of other users
  • x : Select processes without controlling ttys

See every process on the Linux system

Either pass -A or -e option to show all processes on your server/workstation powered by Linux:

# ps -A
# ps -e

How to see every process except those running as root

To negates the selection pass the -N or --deselect option to the ps command:

# ps -U root -u root -N

OR

# ps -U root -u root --deselect

See process run by user JOHAN

Select by process by effective user ID (EUID) or name by passing username such as vivek:

# ps -u johan

Linux running processes with top command

The top program provides a dynamic real-time view of a running system. Type the top at command prompt:

# top

Sample outputs:

To quit press q, for help press h.

How to display a tree of processes

The pstree command shows running processes as a tree. The tree is rooted at either pid or init if pid is omitted. If a user name is specified, all process trees rooted at processes owned by that user are shown.

$ pstree

Sample outputs:

Print a process tree using ps

# ps -ejH
# ps axjf

Sample outputs:

Get info about threads

Type the following command:

# ps -eLf
# ps axms

Task: Get security info

Type the following command:

# ps -eo euser,ruser,suser,fuser,f,comm,label
# ps axZ
# ps -eM

How to save process snapshot to a file

Type the following command:

# top -b -n1 > /tmp/process.log

Or you can email result to yourself:

# top -b -n1 | mail -s 'Process snapshot' [email protected]

How to lookup process by name

Use pgrep command command. It looks through the currently running processes and lists the process IDs which matches the selection criteria to screen. For example, display firefox process id:

$ pgrep firefox

Sample outputs:

3356

Following command will list the process called sshd which is owned by a user called root:

$ pgrep -u root sshd

Say hello to htop and atop

htop is interactive process viewer just like top, but allows to scroll the list vertically and horizontally to see all processes and their full command lines. Tasks related to processes (killing, renicing) can be done without entering their PIDs. To install htop on a Debian/Ubuntu Linux, type the following apt-get command/apt command:

# apt-get install htop

or use the yum command to install htop on a CentOS/RHEL:

# yum install htop

Now type the htop command at the shell prompt:

$ htop

Sample outputs:

atop program

The program atop is an interactive monitor to view the load on a Linux system. It shows the occupation of the most critical hardware resources (from a performance point of view) on system level, i.e. cpu, memory, disk and network. It also shows which processes are responsible for the indicated load with respect to cpu- and memory load on process level; disk- and network load is only shown per process if a kernel patch has been installed. Type the following command to start atop:

# atop

Sample outputs: