2013年3月9日 星期六 晴


一、查看进程

1、ps

(1)查看当前运行的进程

[root@desktop7 ~]# ps
  PID TTY          TIME CMD
 4154 pts/3    00:00:00 bash
 7224 pts/3    00:00:00 ps
[root@desktop7 ~]#

(2)查看系统中所有进程信息

[root@desktop7 ~]# ps aux
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         1  0.0  0.0  10368   676 ?        Ss   Mar07   0:02 init [5]     
root         2  0.0  0.0      0     0 ?        S<   Mar07   0:00 [migration/0]
root         3  0.0  0.0      0     0 ?        SN   Mar07   0:00 [ksoftirqd/0]
root         4  0.0  0.0      0     0 ?        S<   Mar07   0:00 [watchdog/0]
root         5  0.0  0.0      0     0 ?        S<   Mar07   0:00 [migration/1]
root         6  0.0  0.0      0     0 ?        SN   Mar07   0:00 [ksoftirqd/1]

VSZ:占用虚拟内存(swap空间)的大小
RSS:占用常驻内存(物理内存)的大小
TTY:终端,?为未知或不需要终端
STAT:进程当前状态。S(休眠)、R(运行)、Z(僵死)、<(高优先级)、N(低优先级)、s(父进程)+(前台进程)。对于Z,应手动终止。
COMMAND:启动该进程的命令的名称

(3)长格式显示系统进程

[root@desktop7 ~]# ps -elf
F S UID        PID  PPID  C PRI  NI ADDR SZ WCHAN  STIME TTY          TIME CMD
4 S root         1     0  0  75   0 -  2592 -      Mar07 ?        00:00:02 init
1 S root         2     1  0 -40   - -     0 migrat Mar07 ?        00:00:00 [mig]
1 S root         3     1  0  94  19 -     0 ksofti Mar07 ?        00:00:00 [kso]
5 S root         4     1  0 -40   - -     0 watchd Mar07 ?        00:00:00 [wat]
1 S root         5     1  0 -40   - -     0 migrat Mar07 ?        00:00:00 [mig]
1 S root         6     1  0  94  19 -     0 ksofti Mar07 ?        00:00:00 [kso]

PPID:PID进程的父进程

2、top

[root@desktop7 ~]# top

top - 01:21:22 up  4:58,  3 users,  load average: 0.07, 0.17, 0.17
Tasks: 187 total,   1 running, 185 sleeping,   0 stopped,   1 zombie
Cpu(s):  1.7%us,  0.4%sy,  0.0%ni, 97.8%id,  0.0%wa,  0.1%hi,  0.0%si,  0.0%st
Mem:   7849056k total,  4240768k used,  3608288k free,    42804k buffers
Swap:  1020088k total,        0k used,  1020088k free,  1624996k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                    
 3719 root      15   0  353m  21m 8252 S  6.0  0.3   1:28.52 Xorg                                       
 4148 root      15   0  305m  18m 9312 S  1.3  0.2   0:01.62 gnome-terminal                             
 7835 root      15   0 12760 1148  808 R  0.7  0.0   0:00.22 top                                        
 3602 root      15   0 1301m 1.0g 2416 S  0.3 13.8   0:41.64 qemu-kvm                                   
    1 root      15   0 10368  676  564 S  0.0  0.0   0:02.21 init                                       
    2 root      RT  -5     0    0    0 S  0.0  0.0   0:00.00 migration/0                                
    3 root      34  19     0    0    0 S  0.0  0.0   0:00.01 ksoftirqd/0                                
    4 root      RT  -5     0    0    0 S  0.0  0.0   0:00.00 watchdog/0                                 
    5 root      RT  -5     0    0    0 S  0.0  0.0   0:00.00 migration/1                                
    6 root      34  19     0    0    0 S  0.0  0.0   0:00.00 ksoftirqd/1                                
    7 root      RT  -5     0    0    0 S  0.0  0.0   0:00.00 watchdog/1                                 
    8 root      RT  -5     0    0    0 S  0.0  0.0   0:00.00 migration/2     

3、pgrep 查询进程信息

查看进程init

[root@desktop7 ~]# pgrep "init"
1

查看进程ssh

[root@desktop7 ~]# pgrep "ssh"
3195
3786

查看进程log

[root@desktop7 ~]# pgrep -l "log"
2805 syslogd
2808 klogd

查看用户使用程序

[root@desktop7 ~]# su - chenglong

[chenglong@desktop7 ~]$ ps aux|grep ssh
root      3195  0.0  0.0  62656  1180 ?        Ss   Mar07   0:00 /usr/sbin/sshd
root      3786  0.0  0.0  53896   768 ?        Ss   Mar07   0:00 /usr/bin/ssh-agent /bin/sh -c exec -l /bin/bash -c "/usr/bin/dbus-launch --exit-with-session /etc/X11/xinit/Xclients"
500       8308  0.0  0.0  61192   752 pts/4    R+   01:56   0:00 grep ssh
[chenglong@desktop7 ~]$

切换到tty1编辑文本后切回图形界面

[root@desktop7 ~]# pgrep -U chenglong
8378
8411
[root@desktop7 ~]# pgrep -l -U chenglong -t tty1
8378 bash
8411 vim
[root@desktop7 ~]#

4、分区占用情况

[root@desktop7 ~]# free
             total       used       free     shared    buffers     cached
Mem:       7849056    4386348    3462708          0      92412    1683452
-/+ buffers/cache:    2610484    5238572
Swap:      1020088          0    1020088
[root@desktop7 ~]#

[root@desktop7 ~]# free -k
             total       used       free     shared    buffers     cached
Mem:       7849056    4388032    3461024          0      92488    1683744
-/+ buffers/cache:    2611800    5237256
Swap:      1020088          0    1020088
[root@desktop7 ~]#

人类阅读方式

[root@desktop7 ~]# free -m
             total       used       free     shared    buffers     cached
Mem:          7665       4284       3380          0         90       1644
-/+ buffers/cache:       2550       5114
Swap:          996          0        996
[root@desktop7 ~]#

CPU最近负载(1分钟、5分钟、10分钟之内)

[root@desktop7 ~]# uptime
 05:17:16 up  8:53,  5 users,  load average: 0.93, 0.70, 0.40

5、pstree

[root@desktop7 ~]# pstree
init─┬─/usr/share/virt
     ├─acpid
     ├─atd
     ├─auditd─┬─audispd───{audispd}
     │        └─{auditd}
     ├─automount───4*[{automount}]
     ├─avahi-daemon───avahi-daemon
     ├─bonobo-activati───{bonobo-activati}
     ├─bt-applet
     ├─cimserver───cimservermain───4*[{cimservermain}]
     ├─clock-applet
     ├─crond
     ├─cupsd
     ├─2*[dbus-daemon───{dbus-daemon}]
     ├─dbus-launch

-a 列出完整命令信息
-u 列出对应用户名
-p 列出对应PID号

加参数

[root@desktop7 ~]# pstree -aup
init,1                                       
  ├─/usr/share/virt,11118 /usr/share/virt-manager/virt-manager.py
  ├─acpid,3078
  ├─atd,3313
  ├─auditd,2777
  │   ├─audispd,2779
  │   │   └─{audispd},2780
  │   └─{auditd},2778
  ├─automount,3160
  │   ├─{automount},3161
  │   ├─{automount},3162
  │   ├─{automount},3165
  │   └─{automount},3168
  ├─avahi-daemon,3368,avahi
  │   └─avahi-daemon,3369
  ├─bonobo-activati,3860 --ac-activate --ior-output-fd=16
  │   └─{bonobo-activati},3866
  ├─bt-applet,3874 --sm-disable
  ├─cimserver,3439
  │   └─cimservermain,3440,cimsrvr --executor-socket 3
  │       ├─{cimservermain},3464

查看具体用户

[root@desktop7 ~]# pstree -ap chenglong
bash,8378
  └─vim,8411 ab.txt
[root@desktop7 ~]#


二、控制进程

1、手工启动进程

将进程放于后台,关键字“&“

[root@desktop7 ~]# cp /dev/cdrom mycd.iso &

调度启动进程

at、cronab

2、改变进程的运行方式

(1)把当前运行的终端进程调入后台

[root@desktop7 ~]# wget ftp://192.168.0.254/pub/centos5.8/CentOS/Cluster_Administration-as-IN-5.8-1.el5.centos.noarch.rpm

ctrl+Z组合键,将当前进程挂起(调入后台并停止执行),在需停止当前进程进行其他操作中特别有用。

(2)查看后台进程

[root@desktop7 ~]# jobs -l

(3)将后台进程恢复到前台运行

[root@desktop7 ~]# fg +PID号

3、终止进程执行

(1)kill+进程号PID

[root@desktop7 ~]# pgrep -l "ssh"
3195 sshd
3786 ssh-agent

[root@desktop7 ~]# kill 3195

[root@desktop7 ~]# pgrep -l "ssh"

(2)killall+进程名

[root@desktop7 ~]# pgrep -l "vim"
15068 vim
15073 vim
[root@desktop7 ~]# killall -9 vim

(3)pkill

-U 指定用户
-t 指定终端

列出除root以外的用户登录信息

[root@desktop7 ~]# w
 08:24:39 up 12:01,  5 users,  load average: 0.01, 0.06, 0.11
USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT
chenglon tty1     -                02:04    6:20m  0.01s  0.01s -bash
root     :0       -                20:28   ?xdm?   6:31   0.33s /usr/bin/gnome-session
root     pts/3    :0.0             20:43   58:34   0.29s  0.29s bash
root     pts/4    :0.0             22:53   58:58   0.17s  0.17s bash
root     pts/5    :0.0             05:08    0.00s  0.06s  0.01s w

[root@desktop7 ~]# w|grep -v "root"
 08:25:04 up 12:01,  5 users,  load average: 0.01, 0.06, 0.10
USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT
chenglon tty1     -                02:04    6:20m  0.01s  0.01s -bash
[root@desktop7 ~]#

终止chenglong所在终端的进程

[root@desktop7 ~]# pkill -9 -t tty1
[root@desktop7 ~]#

查看结果

[root@desktop7 ~]# w|grep -v "root"
 08:29:06 up 12:05,  4 users,  load average: 0.16, 0.13, 0.11
USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT
[root@desktop7 ~]#

终止用户chenglong启动的进程

[root@desktop7 ~]# pkill -9 -U chenglong
[root@desktop7 ~]#
[root@desktop7 ~]# w|grep -v "root"
 08:31:16 up 12:07,  4 users,  load average: 0.10, 0.11, 0.10
USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT
[root@desktop7 ~]#