Chapter 10. Gathering System Information

Before you learn how to configure your system, you should learn how to gather essential system information. For example, you should know how to find the amount of free memory, how your hard drive is partitioned, and what processes are running. This chapter discusses how to retrieve this type of information from your Red Hat Linux system using simple commands and a few simple programs.

System Processes

The ps ax command displays a list of current system processes, including processes owned by other users. To display the owner of the processes along with the processes use the command ps aux. This list is a static list; in other words, it is a snapshot of what is running when you invoked the command. If you want a constantly updated list of running processes, use top as described below.

You can use the ps command in combination with the grep command to see if a process is running. For example, to determine if Netscape is still running, use the command ps ax | grep netscape.

The top command displays currently running processes and important information about them including their memory and CPU usage. The list is both real-time and interactive. An example of top's output is provided as follows:

  6:14pm  up 2 days, 19:29,  5 users,  load average: 0.10, 0.06, 0.07
71 processes: 68 sleeping, 2 running, 1 zombie, 0 stopped
CPU states:  2.7% user,  0.5% system,  0.0% nice, 96.6% idle
Mem:   256812K av,  252016K used,    4796K free,   97228K shrd,   43300K buff
Swap:  265032K av,    1328K used,  263704K free                   86180K cached

  PID USER     PRI  NI  SIZE  RSS SHARE STAT %CPU %MEM   TIME COMMAND
15775 joe        5   0 11028  10M  3192 S     1.5  4.2   0:46 emacs
14429 root      15   0 63620  62M  3284 R     0.5 24.7  63:33 X
17372 joe       11   0  1056 1056   840 R     0.5  0.4   0:00 top
17356 joe        2   0  4104 4104  3244 S     0.3  1.5   0:00 gnome-terminal
14461 joe        1   0  3584 3584  2104 S     0.1  1.3   0:17 sawfish
    1 root       0   0   544  544   476 S     0.0  0.2   0:06 init
    2 root       0   0     0    0     0 SW    0.0  0.0   0:00 kflushd
    3 root       1   0     0    0     0 SW    0.0  0.0   0:24 kupdate
    4 root       0   0     0    0     0 SW    0.0  0.0   0:00 kpiod
    5 root       0   0     0    0     0 SW    0.0  0.0   0:29 kswapd
  347 root       0   0   556  556   460 S     0.0  0.2   0:00 syslogd
  357 root       0   0   712  712   360 S     0.0  0.2   0:00 klogd
  372 bin        0   0   692  692   584 S     0.0  0.2   0:00 portmap
  388 root       0   0     0    0     0 SW    0.0  0.0   0:00 lockd
  389 root       0   0     0    0     0 SW    0.0  0.0   0:00 rpciod
  414 root       0   0   436  432   372 S     0.0  0.1   0:00 apmd
  476 root       0   0   592  592   496 S     0.0  0.2   0:00 automount

To exit top, press the [q] key.

Useful interactive commands that you can use with top include the following:

Table 10-1. Interactive top commands

CommandDescription
[Space]Immediately refresh the display
[h]Display a help screen
[k]Kill a process. You will be prompted for the process ID and the signal to send to it.
[n]Change the number of processes displayed. You will be prompted to enter the number.
[u]Sort by user.
[M]Sort by memory usage.
[P]Sort by CPU usage.

If you would like to use a graphical interface for top, you can use GNOME System Monitor. To start it, go to the GNOME Main Menu Button => Programs => System => System Monitor or type gtop at a shell prompt.

Figure 10-1. GNOME System Monitor