- Linux find process by name
- Procedure to find process by name on Linux
- Linux find process by name using pgrep command
- How to use ‘ps aux | grep command’
- Using pidof command to grab PIDs for any named program on Linux
- A note about top/htop command
- See also
- Getting more help
- 5 practical examples to list running processes in Linux
- List all the running processes
- Method-1: Using «px aux»
- Method-2: Using «ps -ef»
- Method-3: Using «ps -ely»
- List processes by user
- List the process tree
- Method-1: Using «ps axjf» or «ps -ef —forest»
- Method-2: Using pstree
- List thread count for individual process
- Example-1: Show only PID and command
- Example-2: Show memory and cpu details of each process
- Get process ID of a process
- Get process name using the PID
- List stopped processes
- Conclusion
- Related Posts
- Linux list processes by user names (EUID and RUID)
- Linux list processes by user names
- How to see process created by a specific user in Linux
- How to show all processes for a specific user using top/htop
- How to display user ID associated with a process
- The pgrep command
- Conclusion
- How to check running process in Linux using command line
- Check running process in Linux
- How to manage processes from the Linux terminal
- Linux pgrep command
- Linux top command
- Linux htop command to check running process in Linux
- Linux kill command
- Linux pkill command
- Linux killall command
- Linux nice and renice command
Linux find process by name
Procedure to find process by name on Linux
- Open the terminal application.
- Type the pidof command as follows to find PID for firefox process:
pidof firefox - Or use the ps command along with grep command as follows:
ps aux | grep -i firefox - To look up or signal processes based on name use:
pgrep firefox
Linux find process by name using pgrep command
pgrep command looks through the currently running processes and lists the process IDs which match the selection criteria to screen. All the criteria have to match. For example, will only list the processes called sshd AND owned by root user:
$ pgrep -u root sshd
Just look up pid for firefox process:
$ pgrep firefox
How to use ‘ps aux | grep command’
ps command shows information about a selection of the active processes:
$ ps aux
$ ps aux | grep -i ‘search-term’
$ ps aux | grep ‘firefox’
$ ps aux | grep ‘sshd’
OR use the following syntax instead of using egrep command in pipes:
$ ps -fC firefox
$ ps -fC chrome
The -C option asks ps command to select PIDs by command name.
- 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 ➔
Using pidof command to grab PIDs for any named program on Linux
The pidof command finds the process id’s (pids) of the named programs such as sshd, firefox and more. For example:
$ pidof sshd
$ pidof firefox
Sample outputs:
A note about top/htop command
To display Linux processes use top command or htop command:
$ top
OR
$ htop
See also
Getting more help
Read the man pages for the following command using man command:
$ man pgrep
$ man pidof
$ man ps
🐧 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.
Related Posts
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!!
Источник
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:
- Open the terminal window or app
- To see only the processes owned by a specific user on Linux run: ps -u
- Search for a Linux process by name run: pgrep -u
- 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
Источник
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:
- Open the terminal window on Linux
- For remote Linux server use the ssh command for log in purpose
- Type the ps aux command to see all running process in Linux
- 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:
- root – User name
- 1 – PID (Linux process ID)
- 19:10 – Process start time
- /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:
Источник