Problem solve Get help with specific problems with your technologies, process and projects.

How can I pinpoint the I/O hogs in my systems?

I'm looking for commands that pinpoint and check a process that is generating a high disk I/O (input/output) read.

What would that command be in Solaris 8? What would it be in Linux?
If you had said CPU or disk, that question would be very easy. Variations of the ps command could give you what you need.

I/O is much trickier! You'll need to do some work here -- there is no one magic command, though I'll mention a neat one at the end.

I like to try a variation of ps, iostat and lsof to determine what is eating up my I/O resources. You may need to download this utility from a site like http://www.stokely.com/unix.sysadm.resources/shareware.www.html.

iostat will give you a sense of what disks are busy and lsof will tell you what files are open at a given time and the placement of the files by filesystems and/or directory. Variations of the ps command will help you identify the top running processes on your system.

Did I say top? If your system does not come with it already, you can also get a copy of TOP, available for Solaris and Linux, that will also identify the top running processes on your system. From there, with a little more work, you should be able to find the I/O hogs.

Dig Deeper on Linux servers

Have a question for an expert?

Please add a title for your question

Get answers from a TechTarget expert on whatever's puzzling you.

You will be able to add details on the next page.

Start the conversation

Send me notifications when other members comment.

Please create a username to comment.