当前位置: > RedHat >

RHCE7认证学习笔记7——监视和管理进程

时间:2016-05-29 03:49来源:linux.it.net.cn 作者:IT

RHCE7认证学习笔记7——监视和管理进程

1、查看进程

某个进程的基础上生成了另一个进程,则它们为父子进程;  
[root@it.net.cn ~]# pstree

├─sshd───sshd───bash───pstree

[root@it.net.cn ~]# ps 
  PID TTY          TIME CMD 
 2797 pts/0    00:00:00 bash
 2874 pts/0    00:00:00 ps

查看所有进程,x表示显示不属于任何终端的子进程,即tty显示为?,ps -ef等同于ps aux,不同的系统风格而已:
[root@it.net.cn ~]# ps aux 
USER      PID %CPU %MEM    VSZ  RSS TTY(终端)      STAT(状态) START  TIME COMMAND 
root        1  0.2  0.7  53676  7580 ?        Ss  17:49  0:02 /usr/lib/systemd/systemd --switched-root --system --deserialize 24 
root        2  0.0  0.0      0    0 ?        S    17:49  0:00 [kthreadd] 
root        3  0.0  0.0      0    0 ?        S    17:49  0:00 [ksoftirqd/0]

    如果只显示某几列的值,则可以使用以下命令,比如只想显示PID,CPU,MEM:
[root@it.net.cn ~]# ps -ex -o pid,%cpu,%mem --noheader|head 
    1  0.1  0.7 
    2  0.0  0.0 
    3  0.0  0.0 
    5  0.0  0.0 
    6  0.0  0.0 
    7  0.0  0.0 
    8  0.0  0.0 
    9  0.0  0.0 
  10  0.0  0.0 
  11  0.0  0.0

动态显示系统的进程信息,使用top命令,可以在top命令后面加上时间选项,调整进程显示频率,如top 1:

top - 18:22:31 up 33 min,  2 users,  load average: 0.00, 0.01, 0.06 
Tasks: 255 total,  2 running, 253 sleeping,  0 stopped,  0 zombie 
%Cpu(s):  0.0 us,  0.3 sy,  0.0 ni, 99.7 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st 
KiB Mem:  1010860 total,  590376 used,  420484 free,      884 buffers 
KiB Swap:  2097148 total,        0 used,  2097148 free.  218452 cached Mem 
  PID USER      PR  NI    VIRT    RES    SHR S %CPU %MEM    TIME+ COMMAND                                                            
 3249 root      20  0  123776  1764  1156 R  0.3  0.2  0:00.08 top                                                              
    1 root      20  0  53676  7580  2524 S  0.0  0.7  0:03.04 systemd

2、查看进程的信号
常用的信号为:9——杀死进程,15——终止进程;2——相当于ctrl+c;使用方式:kill -9 PID,kill如果不指定信号值,则默认指15

[root@it.net.cn ~]# kill -l 
 1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL 5) SIGTRAP 
 6) SIGABRT 7) SIGBUS 8) SIGFPE 9) SIGKILL10) SIGUSR1 
11) SIGSEGV12) SIGUSR213) SIGPIPE14) SIGALRM15) SIGTERM 
16) SIGSTKFLT17) SIGCHLD18) SIGCONT19) SIGSTOP20) SIGTSTP 
21) SIGTTIN22) SIGTTOU23) SIGURG24) SIGXCPU25) SIGXFSZ 
26) SIGVTALRM27) SIGPROF28) SIGWINCH29) SIGIO30) SIGPWR 
31) SIGSYS34) SIGRTMIN35) SIGRTMIN+136) SIGRTMIN+237) SIGRTMIN+3 
38) SIGRTMIN+439) SIGRTMIN+540) SIGRTMIN+641) SIGRTMIN+742) SIGRTMIN+8 
43) SIGRTMIN+944) SIGRTMIN+1045) SIGRTMIN+1146) SIGRTMIN+1247) SIGRTMIN+13 
48) SIGRTMIN+1449) SIGRTMIN+1550) SIGRTMAX-1451) SIGRTMAX-1352) SIGRTMAX-12 
53) SIGRTMAX-1154) SIGRTMAX-1055) SIGRTMAX-956) SIGRTMAX-857) SIGRTMAX-7 
58) SIGRTMAX-659) SIGRTMAX-560) SIGRTMAX-461) SIGRTMAX-362) SIGRTMAX-2 
63) SIGRTMAX-164) SIGRTMAX

可以使用pgrep和pidof直接查看进程PID,两个命令的区别是pidof是精确匹配,pgrep支持模糊匹配:
[root@it.net.cn ~]# pgrep ssh 
1621 
2793

ctrl+z可以让进程在后台运行,通过jobs命令可以查看后台运行的进程,bg 后台PID和fg PID可以让进程在后台或者前台运行,要杀死后台运行的进程,可以使用命令:kill -9 %1(后台运行的PID):

通过使用nohup命令可以让进程在后台运行,即使终端关闭,进程也会继续运行:
[root@it.net.cn ~]# nohup firefox %> /dev/null &



(责任编辑:IT)
------分隔线----------------------------
栏目列表
推荐内容