Linux show all pids

Linux list processes by user names (EUID and RUID)

Linux list processes by user names

The procedure to view process created by the specific user in Linux is as follows:

  1. Open the terminal window or app
  2. To see only the processes owned by a specific user on Linux run: ps -u
  3. Search for a Linux process by name run: pgrep -u
  4. Another option to list processes by name is to run either top -U or htop -u commands

Let us see examples in details to show all processes for a specific user on Linux.

How to see process created by a specific user in Linux

See all process crated by user named tom:
ps -u tom
OR
ps -U tom
EUID is the Effective User ID. The effective user ID describes the user whose file access permissions are used by the process. RUID is the Real User ID. The real user ID identifies the user who created the process. So:

  • -u tom : Show all processes by RUID
  • -U tom : Display all processes by EUID

You can get a list of every process running as vivek (real [RUID] & effective ID [EUID]) in user format:
ps -U vivek -u vivek
ps -U vivek -u vivek u
## see all process run by, qemu and postfix users ##
ps -U qemu -u qemu
ps -U postfix -u postfix
ps -U postfix -u postfix u

How to show all processes for a specific user using top/htop

The syntax is pretty simple to see all processes created by a user named vivek:
top -U vivek

Linux list processes by user name using top command

Linux show all processes created and used by a user named ‘vivek’ using htop

How to display user ID associated with a process

Another option is to use the combination of ps command and grep command/egrep command:
sudo ps -ef | grep
sudo ps -efl | grep
sudo ps -efl | grep vivek
sudo ps -ef | grep nginx
sudo ps -efl | grep ‘www-data’

The www-data user ID associated with a Linux process named lighttpd, nginx, and php-fpm.

  • No ads and tracking
  • In-depth guides for developers and sysadmins at Opensourceflare✨
  • Join my Patreon to support independent content creators and start reading latest guides:
    • How to set up Redis sentinel cluster on Ubuntu or Debian Linux
    • How To Set Up SSH Keys With YubiKey as two-factor authentication (U2F/FIDO2)
    • How to set up Mariadb Galera cluster on Ubuntu or Debian Linux
    • A podman tutorial for beginners – part I (run Linux containers without Docker and in daemonless mode)
    • How to protect Linux against rogue USB devices using USBGuard

Join Patreon

  • -l : Long format
  • -a : Show command line args
  • -p : Display Linux PIDs
  • -s : See parents of the selected process

The pgrep command

The pgrep command can look up processes based on usernames. The syntax is:
### Only match processes whose Linux effective user ID (euid) is listed ###
pgrep -u euid
### Only match processes whose effective user ID (uid) is listed ##
pgrep -U uid
pgrep -l -u vivek
pgrep -l -U www-data

Conclusion

🐧 Get the latest tutorials on Linux, Open Source & DevOps via

Источник

5 practical examples to list running processes in Linux

Table of Contents

How to list processes by user and name in Linux? How to check if process is running by pid ? How to check process status? which command is used to kill a process?

In this tutorial we will cover all these questions and explore different commands and tools to list and manage processes in Linux and Unix. ps command is the best tool to list down all the running processes across the server. There are a wide range of arguments which can be used with ps to list processes based in our requirement.

List all the running processes

Method-1: Using «px aux»

To list every process on the system using BSD syntax:

This will give you a long list of output with more details on individual process such as memory and cpu usage, status, user owner of the process and more. Following is a snippet from my terminal:

ps aux output

Method-2: Using «ps -ef»

The next method will list all the running process using standard syntax:

This gives lesser information compared to ps aux :

Method-3: Using «ps -ely»

We can use some more arguments with ps to list the running processes in Linux:

This command will give us additional detail compared to ps -ef such as priority and nice value of individual process.

ps -ely output

List processes by user

To list all the processes based on user owner we can use following syntax:

To list the process started by user root:

Sample output from my terminal:

list processes by user

To list the process started by normal user deepak :

List the process tree

Method-1: Using «ps axjf» or «ps -ef —forest»

We can also use ps command to list the running process in the tree format to understand the parent and child processes.

list process in tree structure

Method-2: Using pstree

Although you have a better alternative to above command if you wish to see the structure of all the running process using pstree which is part of psmisc rpm in RHEL/CentOS distribution. This command is used to display the parent-child relationship in hierarchical format.

pstree output

To list the process tree of process started by individual user, you can use

For example to show the process tree of user deepak :

You can check the man page of pstree for more list of supported options.

List thread count for individual process

We can use -L argument to list the number of threads along with individual process. It will add a new column in the output possibly with LWP and NLWP

Sample output from this command:

list process with thread count

List process with user defined format

By default ps will show a certain default list of columns. You can manipulate and print your own set of columns to get the required details of a process by using following syntax:

Here, you can replace the ARGUMENTS with supported list of values from man page of ps

Example-1: Show only PID and command

To show only the list of PID and their respective commands:

Example-2: Show memory and cpu details of each process

There are different arguments which you can use to print the memory and cpu related information of individual process, here I have consolidated a few:

Get process ID of a process

Now assuming you have a running process for which you want to get the PID so we can again use ps in this format:

Here we need to replace PROCESS with the name of the process or command for which we want to perform the lookup of PID. For example to get the PID of rsyslogd process:

Similarly to get the list of PID for sshd daemon

Get process name using the PID

Now if the situation is reversed, i.e. you have the PID and you wish to get the process or command of the mapping PID then you can use following format:

Here, replace PID with the pid value of the process for which you have to perform lookup. Following are some examples where we get the process name using the PID value.

List stopped processes

You can stop a running or hung process using ctrl+z short key. When you press this key combination, the ongoing process on the terminal will be forcefully stopped.

For example, here I had an SFTP session which was stuck so I pressed ctrl+z to stop the process forcefully which immediately stops the process and returns to console.

To list all the processes which are in stopped state use jobs command

So currently in my server, I have 3 stopped processes. To kill a stopped process we use

where JOB ID is the ID number you see with «Stopped» under square brackets.

So for example to kill the process with job ID 3 we will use:

Next if I check the current stopped processes then I see that the process with JOB ID 3 is marked as Exit which means it is in the verge of getting killed (almost dead)

We check the status again in few seconds and our process with JOB ID 3 is not there in the list any more and was killed successfully

Conclusion

In this tutorial we learned about listing and managing Linux processes using ps command. We also have other tools such as top , htop which can list the system processes but I find ps more suitable in most scenarios. If you requirement is to watch the runtime status of process i.e. to monitor a process and it’s status then top would be your best alternative as it continuously monitors the status of process and shows you latest stat for memory, cpu usage and other related values.

Didn’t find what you were looking for? Perform a quick search across GoLinuxCloud

If my articles on GoLinuxCloud has helped you, kindly consider buying me a coffee as a token of appreciation.

For any other feedbacks or questions you can either use the comments section or contact me form.

Thank You for your support!!

Источник

How to check running process in Linux using command line

I am a new system administrator for the Linux operating system. How do I check running process in Linux using the command line option?

Tutorial details
Difficulty level Easy
Root privileges Yes
Requirements Linux terminal
Est. reading time 4 mintues

One can use the Linux command line or terminal app to display a running process, change their priorities level, delete process and more. This page shows how to use various commands to list, kill and manage process on Linux.

Check running process in Linux

The procedure to monitor the running process in Linux using the command line is as follows:

  1. Open the terminal window on Linux
  2. For remote Linux server use the ssh command for log in purpose
  3. Type the ps aux command to see all running process in Linux
  4. Alternatively, you can issue the top command or htop command to view running process in Linux

Let us see some example and usage in details.

Please note that vivek@nixcraft:

$ is my shell prompt. You need to type commands after the $ prompt.

How to manage processes from the Linux terminal

The ps command is a traditional Linux command to lists running processes. The following command shows all processes running on your Linux based server or system:
vivek@nixcraft:

$ ps -aux
vivek@nixcraft:

  1. root – User name
  2. 1 – PID (Linux process ID)
  3. 19:10 – Process start time
  4. /sbin/init splash – Actual process or command

There may be too many processes. Hence, it uses the following less command/more command as pipe to display process one screen at a time:
vivek@nixcraft:

$ ps -aux | more
vivek@nixcraft:

$ sudo ps -aux | less
Press q to exit from above Linux pagers. You can search for a particular Linux process using grep command/egrep command:
vivek@nixcraft:

$ ps aux | grep firefox
vivek@nixcraft:

$ sudo ps aux | grep vim
vivek@nixcraft:

$ sudo ps -aux | egrep ‘sshd|openvpn|nginx’

  • No ads and tracking
  • In-depth guides for developers and sysadmins at Opensourceflare✨
  • Join my Patreon to support independent content creators and start reading latest guides:
    • How to set up Redis sentinel cluster on Ubuntu or Debian Linux
    • How To Set Up SSH Keys With YubiKey as two-factor authentication (U2F/FIDO2)
    • How to set up Mariadb Galera cluster on Ubuntu or Debian Linux
    • A podman tutorial for beginners – part I (run Linux containers without Docker and in daemonless mode)
    • How to protect Linux against rogue USB devices using USBGuard

Join Patreon

Linux pgrep command

Many variants of Linux comes with the pgrep command to search/find process. The syntax is:
vivek@nixcraft:

$ sudo pgrep sshd
vivek@nixcraft:

$ pgrep vim
vivek@nixcraft:

$ pgrep firefox
vivek@nixcraft:

Linux top command

The top command is another highly recommended method to see your Linux servers resource usage. One can see a list of top process that using the most memory or CPU or disk.
vivek@nixcraft:

$ sudo top
vivek@nixcraft:

Linux htop command to check running process in Linux

The htop command is an interactive process viewer and recommended method for Linux users. One can see a list of top process that using the most memory or CPU or disk and more:
vivek@nixcraft:

$ sudo htop
vivek@nixcraft:

Linux kill command

Want to kill a process? Try kill command. The syntax is:
vivek@nixcraft:

$ kill pid
vivek@nixcraft:

$ kill -signal pid
Find PID using ps, pgrep or top commands. Say you want to kill a PID # 16750, run:
vivek@nixcraft:

$ kill 16750
For some reason if the process can not be killed, try forceful killing:
vivek@nixcraft:

$ kill -9 16750
OR
vivek@nixcraft:

$ kill -KILL 16750

Linux pkill command

If you wish to kill a process by name, try pkill command. The syntax is:
vivek@nixcraft:

$ pkill processName
vivek@nixcraft:

$ pkill vim
vivek@nixcraft:

$ pkill firefox
vivek@nixcraft:

$ pkill -9 emacs
vivek@nixcraft:

$ sudo pkill -KILL php7-fpm

Linux killall command

The killall command kills processes by name, as opposed to the selection by PID as done by kill command:
vivek@nixcraft:

$ killall vim
vivek@nixcraft:

$ killall -9 emacs

Linux nice and renice command

The primary purpose of the nice command is to run a process/command at a lower or higher priority. Use the renice command to alter the nice value of one or more running Linux processes. The nice value can range from -20 to 19, with 19 being the lowest priority. Say, you want to compile software on a busy Linux server. You can set a very low priority, enter:
vivek@nixcraft:

$ nice -n 13 cc -c *.c &
Set a very high priority for a kernel update. Before rebooting Linux server, run:

Источник

Читайте также:  Beholder для mac os
Оцените статью