进程管理经验

服务器

浏览数:117

2019-10-16

AD:资源代下载服务

1.ps命令用于查看系统中的进程状态,格式为:ps [参数]

常用参数:

参数  作用
-a  显示所有的进程(包括其他用户的)
-u  用户以及其他详细信息
-x  显示没有控制终端的进程

Linux系统中时刻运行着许许多多的进程,如果能够合理的管理它们,绝对有益于对系统的性能优化,Linux系统中进程最常见的5种不同的状态是运行、中断、不可中断、僵死与停止,它们的含义分别是:

R(运行):正在运行或在运行队列中等待。

S(中断):休眠中, 在等待某个条件的形成或接收到信号。

D(不可中断):收到信号不唤醒和不可运行, 进程必须等待直到有中断发生。

Z:(僵死):进程已终止, 但进程描述符存在, 直到父进程调用wait4()系统调用后释放。

T:(停止):进程收到SIGSTOP, SIGSTP, SIGTIN, SIGTOU信号后停止运行。

图片.png

2.top命令用于动态的监视进程活动与系统负载等信息,格式为:top

这个top命令可真的是太厉害了,它能够动态的查看系统运维状态,完全可以比喻成是“强化版的Windows任务管理器”。

图片.png

top命令前面的五行为系统整体的统计信息,下面逐行的讲解:

第1行:系统时间,运行时间,登录终端数,系统负载(分别为1分钟、5分钟、15分钟的平均值,数值越小意味着负载越低)。

第2行:进程总数,运行中的,睡眠中的,停止的,僵死的。

第3行:用户占用资源,系统内核占用资源,改变过优先级的进程,空闲的资源,等待输入输出的时间。

此行数据均为CPU数据并以百分比格式显示,例如"99.2 id"意味着有99.2%的CPU处理器资源正在空闲中。

第4行:物理内存总量,使用量,空闲量,作为内核缓存的内存量。

第5行:虚拟内存总量,使用量,空闲量,已被提前加载的内存数据。

3.pidof命令用于查询某个指定服务进程的PID号码值,格式为:“pidof [参数] [服务名称]”。

PID值是区别每个进程的唯一号码,每次在计算机上运行相同的服务程序都很少会获得同样值的PID号码(PID会改变)。

[root@linuxprobe ~]# pidof sshd
2156

4.kill命令用于终止某个指定PID号码的服务进程,格式为:kill [参数] [进程PID号]

[root@linuxprobe ~]# kill 2156

效果相当于将PID为 2156的进程强制停止。

killall命令用于终止某个指定名称的服务所对应的全部进程,格式为:“killall [参数] [进程名称]”。

复杂软件的服务程序通常都会有数个进程协同为用户提供服务,如果逐个去结束PID号码又实在太麻烦,因此便可以使用killall命令来批量结束某个服务程序带有的全部进程。例如结束掉网络服务的全部进程,下面以httpd服务程序为例,默认您的RHEL7系统未安装它,当前同学们只需看操作过程和结果即可:

[root@linuxprobe ~]# pidof httpd
13581 13580 13579 13578 13577 13576
[root@linuxprobe ~]# killall httpd
[root@linuxprobe ~]# pidof httpd
[root@linuxprobe ~]# 

5.平时在系统终端中执行一个命令后如果想立即的停止它,您可以同时按下系统组合键Ctrl+c,这样命令的进程将会立即被终止,是生产工作中比较常用的命令行快捷键之一。或者有些命令在执行时会不断的在屏幕上输出信息,影响到咱们继续输入命令了,便可以在执行命令时在命令最后面添加上一个&符号,这样命令从开始执行就默认被放到系统后台了。

作者:廖马儿