Keep Linux processes under control

Daily Newsletters

Sign up to ZDNet UK's daily newsletter.

Monitoring processes with top
Another good program to get familiar with is top. This program is similar to ps but is usually started full screen and updates continuously with process information. This can help with programs that may infrequently cause problems and can be hard to see with ps. Overall system information is also presented, which makes a nice place to start looking for problems. Information such as total system CPU and memory resources, as well as the load average, is helpful by itself. Add to this a list of programs and their current status and individual statistics, and you can see why top is a commonly used tool. Don't forget pstree
And finally, another quick and easy tool for checking processes is pstree. This command will list current processes and their tree structure. When one process starts, it sometimes creates child processes of itself. You can easily see this when you run the command pstree:  
$ pstree -cp 125
httpd(125)-+-httpd(126)
                   |-httpd(127)
                    | -httpd(129)
                    '-httpd(130)
 
Httpd is a good example because it will often spawn child processes. Here, we're looking at the tree for PID 125. If you need to stop httpd but don't want to kill all the individual children, go for the parent process. The pstree command can list trees for individual processes or all the processes on the system. Not only can this help you track down misbehaving processes, but it is also useful as a learning tool. You can learn a lot about Linux executing these commands and reading the associated man pages. Managing processes
Once you have used tools such as ps and top to monitor processes, you need to know how to manage them. You can do this with commands such as kill, killall, and renice. kill sends signals to running processes. The most obvious usage is to halt program execution. You will first need to get the PID for a running program (using ps aux, for example) and then use it in the command as follows: $ kill 125
Under normal circumstances, this should stop the process 125. Also note that you will either need to be the owner of the process or root to halt it. And sometimes, a process will not respond to just a simple kill command. You may have to try the following: $ kill -9 125
If the process is hung and not responding normally, you can try killing it with the -9 flag, as shown in the above example. Instead of sending a sigterm, as a normal kill command does, the -9 sends a sigkill (which forces the program to close). Other signals can be sent to either stop it or possibly restart it. You can see these by running the command kill --l. The command killall, while very much like kill, accepts arguments differently. Instead of passing it a PID, you can pass it a program name. All processes running with that program name will then be stopped. This applies to just the ones you own or to all of them if you are the root user. So running the command killall tcpdump will kill all instances of the program tcpdump. This is much more helpful when many processes are running under a single name. Be sure to watch what processes you stop, especially when you are root. Killing the wrong process could close your session or even halt the system. Get familiar with the standard running programs and how they use resources. Setting a baseline is invaluable in helping to isolate system problems. Remember when I mentioned earlier that you could change the priority of a running process? Well you can do this with the command renice. Changing priority tells the operating system to give a particular process more or less of its CPU time. The range of a process's "niceness" is from -20 to 20, with -20 being the highest priority. So to reduce the priority of httpd process 125, you could run: $ renice +20 125
You can do this on the fly to conserve system resources. The system will also do this naturally and can indicate if one program taking up more resources than it should. Speedier problem solving
The ability to monitor and control processes on your Linux system is essential. Programs such as ps, top, kill, and renice enable you to see what a process is doing and to control it. The more you know about what each process is up to, the easier it will be to pinpoint problems when they creep in. A system usually experiences problems such as slowness or instability for a reason, and using these tools should help you improve your ability to track down the causes.
For a weekly round-up of the enterprise IT news, sign up for the
Enterpise newsletter. Find out what's where in the new Tech Update with our
Guided Tour. Tell us what you think in the
Enterprise Mailroom.

Post your comment

In order to post a comment you need to be registered and logged in.

You can also log in with Facebook. Log in or create your ZDNet UK account below

  • Login

Will not be displayed with your comment

By signing up for this service, you indicate that you agree to our Terms and Conditions and have read and understood our Privacy Policy. Questions about membership? Find the answers in the Community FAQ

Get ZDNet UK's daily newsletter

Enter your email address to sign up

ZDNet UK Live

bordero

ike fuelband is great for every healthminded person ! to work out! theres this website called textme4free.com that you can use to text anywhere in...

7 hours ago by bordero on Nike's FuelBand wristband gamifies exercise
BrownieBoy

> I'm told it's somewhat annoying when people have their Macs stolen > and Apple stores treat the thief as the owner, but there you go. Ouch,...

9 hours ago by BrownieBoy on AMD Ultrathins to challenge Intel Ultrabooks
Moley

@kevinmchapman. OK, I acknowledge that 'most' was a gratuitous throwaway comment as an afterthought and too presumptuous. As to proof, as you...

14 hours ago by Moley on A tale of two distros: Ubuntu and Linux Mint
Jack Schofield

@BrownieBoy > Works really well for thieves.... >> Nice attempt to deflect the argument by tossing in a point that's totally >> irrelevant, even...

15 hours ago by Jack Schofield on AMD Ultrathins to challenge Intel Ultrabooks
raskolnikof

fantastic that the so called piracy bills have been withdrawn. however, these anti-democracy supporters are still in the shadows so lets be alert...

15 hours ago by raskolnikof on SOPA, Protect IP support wavers in face of online protest
Tony Douglas

Please God no; teach them anything you like - thinking rationally, the uses and misuses of data, what data is and what it's not - but leave the...

18 hours ago by Tony Douglas via Facebook on Kids are the future. Teach ’em to code.
BrownieBoy

@Jack, > Works really well for thieves.... Nice attempt to deflect the argument by tossing in a point that's totally irrelevant, even it were...

1 day ago by BrownieBoy on AMD Ultrathins to challenge Intel Ultrabooks
bootlegger

Make that 13 people now - I got refused today at Manchester airport. I thought I was up to date on this legislation - I knew of the EU ruling from...

1 day ago by bootlegger on UK airport body scans will not be opt out
tinycg

Don't forget to check out apps like GoodReader or SlideShark either, they're indispensible for people on the go in presentation situations. Best...

2 days ago by tinycg on Four top iPad apps for people on the move
TerryRK

Well it seems there is something a number of us agree on. Why is the Ubuntu Unity launcher so ugly? I thought perhaps it was something to do with...

2 days ago by TerryRK on A tale of two distros: Ubuntu and Linux Mint
Freebies202

Duplicate comments are not made intentionally. Its very good to know that now you are keeping check on this problem because sometimes a commenter...

2 days ago by Freebies202 on Microsoft fixes blog comments, speeds up blogs with open source
kevinmchapman

"the very significant number of users" and "many (most) of us" - you have no evidence for these statements. It is a fact that most users are saying...

2 days ago by kevinmchapman on A tale of two distros: Ubuntu and Linux Mint
Marg Menzies Harrison

Another grammar faux pas is the improper use of "you". When sitting down down in a restaurant, for example, I get cringe when the waitress...

3 days ago by Marg Menzies Harrison via Facebook on 10 flagrant grammar mistakes that make you look stupid
zdnetukuser

And NOW, folks, for Canonical's next trick... Kubuntu is late. Here's a pencil. Draw your own conclusions. cf.:...

3 days ago by zdnetukuser on Linux Minterface
Moley

@kevinmchapman. The discussion here reflects the very significant number of users who really do like the traditional menu system and who wish to...

3 days ago by Moley on A tale of two distros: Ubuntu and Linux Mint
kevinmchapman

Er, no... It is an efficient means of finding the application/file/setting you need in one place. The icons are a simply a fallback for when you...

3 days ago by kevinmchapman on A tale of two distros: Ubuntu and Linux Mint
TerryRK

Isn't the provision of a text based search an admission by the developers that the mass of icons approach does not work? I don't need to use a...

3 days ago by TerryRK on A tale of two distros: Ubuntu and Linux Mint
kevinmchapman

"Unity and GNOME 3 both abandon the old text-based cascading menus in favour of a graphical icon-driven system." Point truly missed. Both use a...

3 days ago by kevinmchapman on A tale of two distros: Ubuntu and Linux Mint
TerryRK

whs001 - Thank you, I'm glad you liked the article. I absolutely agree with you on your first point. I should perhaps have made it clearer that...

3 days ago by TerryRK on A tale of two distros: Ubuntu and Linux Mint
Dennis Nilsson

If we allow corporate interest to dictate the way our government circumvents due process against foreign entities then we should accept the same...

3 days ago by Dennis Nilsson via Facebook on ACTA stumbles in Germany