Linux 进程管理介绍

进程管理

一、进程基本介绍
  1. 在Linux中,每个执行的程序、代码都成为一个进程(process)。每个进程都分配一个ID号。
  2. 每个进程,都会对应一个父进程,而这而过父进程可以复制多个子进程。
  3. 每个进程都可能以两种形式存在的。前台和后台,前台进程就是用吗目前屏幕上可以进行的操作;后台进程则是实际在操作,但由于屏幕上无法看到的进程,通常使用后台方式执行。
  4. 一般系统的服务都是以后台进程的方式存在,而且由于屏幕上无法看到进程,通常使用后台方式执行。
二、显示系统执行的进程

ps [选项]:显示当前进程 (process) 的状态。

选项

参数 功能
-a 显示当前终端的所有进程信息
-u 以用户的格式显示进程信息
-x 显示后台进程运行的参数
-e 显示所有进程
f 全格式

示例

  1. 查看进程

    •  [root@wcl ~]# ps -aux|more
       USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
       root         2  0.0  0.0      0     0 ?        S    4月27   0:00 [kthreadd]
       root         3  0.0  0.0      0     0 ?        S    4月27   0:00 [ksoftirqd/0]
       root         5  0.0  0.0      0     0 ?        S<   4月27   0:00 [kworker/0:0H]
        ……省略部分结果
      
    • 注意上面的第二行内容;下面来介绍里面各个列名称的具体含义

    • 列名称 含义
      USER 用户名称
      PID 进程号
      %CPU 进程占用CPU的百分比
      %MEM 进程占用物理内存百分比
      VSZ 进程占用的虚拟内存大小(KB)
      RSS 进程占用的物理内存大小(KB)
      TTY 使用的终端
      STAT 进程状态;S:睡眠;R:运行等
      START 进程的启动时间
      TIME CPU时间,即进程使用CPU的总时间
      COMMAND 启动进程所用的命令和参数

  2. 以全格式显示当前所有的进程,产看进程的父进程

  • ps -ef | more

  • [root@wcl ~]# ps -ef |more
    UID        PID  PPID  C STIME TTY          TIME CMD
    root         3     2  0 4月27 ?       00:00:00 [ksoftirqd/0]
    root         5     2  0 4月27 ?       00:00:00 [kworker/0:0H]
    ... ...//省略剩余结果
    
  • 注意:PID是进程号;PPID:是父进程号

  1. 查看sshd的进程

    • ps -ef | grep sshd

三、终止进程kill和killall

中途想让进程停止,或者因为进程消耗大量系统资源。我们使用kill命令来完成此项任务。
kill [选项] 进程号:通过进程号杀死进程

killall 进程名称:通过进程名称杀死进程,也支持通配符

常用选项

选项 功能
-9 强迫进程立即停止

示例

  1. 踢掉某非法登录用户

    • [root@wcl ~]# ps -aux
      USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
      root         2  0.0  0.0      0     0 ?        S    4月27   0:00 [kthreadd]
      root     16628  0.0  0.0 150424  5860 ?        Ss   17:26   0:00 sshd: root@pts/3
      root     16630  0.0  0.0 116316  2908 pts/3    Ss   17:26   0:00 -bash
      root     16651  0.0  0.0 189604  2364 pts/3    S    17:26   0:00 su jack
      jack     16652  0.0  0.0 116328  2928 pts/3    S+   17:26   0:00 bash
      
    • 注意:我们在这里将用户jack踢掉

    • kill 16651
      

      此时此刻,jack登录窗口会会出现下面这一段话

      [jack@wcl root]$ 
      Session terminated, killing shell... ...已杀死。
      [root@wcl ~]# 
      
  2. 强制杀掉终端 199

    • kill -9 199
      
四、查看进程树pstree

可以更加直观的查看进程信息;在这里我的系统中暂时没有这个指令,暂且不记录。


待续 ... ...

五、服务管理
六、动态监控进程

生活可以忙忙碌碌随大流,但思想却可以偷偷摸摸求上进。

猜你喜欢

转载自www.cnblogs.com/Vultr/p/8969419.html