Time and again I have found phpmyadmin not working because there are a lot of zombies of httpd. I do not know yet why these many instances of the daemon show up and why they turn into unresponsive zombie processes. Usually when this happens, I just kill all the zombies and spawn a new daemon and I carry on with my work. I used to kill all the zombies one at a time. However, today I figured out that I can do it with a single line.
[If the working is clear to you, do read further and let me know if I can improve it or if I am interpreting anything incorrectly although things are somehow working.]
The one-liner above is easy to understand once we have understand the pieces. So, I am listing that below.
ps aux | grep http | awk -F " " '{print $2}' | xargs kill -9
[If the working is clear to you, do read further and let me know if I can improve it or if I am interpreting anything incorrectly although things are somehow working.]
The one-liner above is easy to understand once we have understand the pieces. So, I am listing that below.
- ps aux lists all running processes
- grep http finds the lines containing the string 'http'
- awk -F " " '{print $2}' splits each input line by delimiter specified with -F flag, space in this case and prints the second token thus obtained
- kill -9 send SIGKILL signal to the processes whose ids are specified as arguments
- xargs takes output of previous command and makes it input for the next
You should probably have a look at the man pages for more details on the commands.
No comments:
Post a Comment