按内存占用排序和按CPU占用排序的Linux TOP命令
Linux TOP命令默认是CPU占用排序,按M可以切换到按内存占用排序。这是系统维护和电脑内存维护。可以切换的。不同的用法,达到不同的效果。以下是关于这两个的详细说明。
P – 以 CPU 占用率大小的顺序排列进程列表
M – 以内存占用率大小的顺序排列进程列表
在系统维护的过程中,随时可能有需要查看 CPU 使用率,并根据相应信息分析系统状况的需要。在 CentOS 中,可以通过 top 命令来查看 CPU 使用状况。运行 top 命令后,CPU 使用状态会以全屏的方式显示,并且会处在对话的模式 — 用基于 top 的命令,可以控制显示方式等等。退出 top 的命令为 q (在 top 运行中敲 q 键一次)。
在命令行中输入 “top” 即可启动 top ,top 的全屏对话模式可分为3部分:系统信息栏、命令输入栏、进程列表栏。
第一部分 — 最上部的 系统信息栏 :
第一行(top):
“14:55:59”为系统当前时刻;
“4 days, 5:52”为系统启动后到现在的运作时间;
“1 user”为当前登录到系统的用户,更确切的说是登录到用户的终端数 — 同一个用户同一时间对系统多个终端的连接将被视为多个用户连接到系统,这里的用户数也将表现为终端的数目;
“load average”为当前系统负载的平均值,后面的三个值分别为1分钟前、5分钟前、15分钟前进程的平均数,一般的可以认为这个数值超过 CPU 数目时,CPU 将比较吃力的负载当前系统所包含的进程;
第二行(Tasks):
“12 total”为当前系统进程总数;
“1 running”为当前运行中的进程数;
“11 sleeping”为当前处于等待状态中的进程数;
“0 stoped”为被停止的系统进程数;
“0 zombie”为被复原的进程数;
第三行(Cpus):
分别表示了 CPU 当前的使用率;
第四行(Mem):
分别表示了内存总量、当前使用量、空闲内存量、以及缓冲使用中的内存量;
第五行(Swap):
表示类别同第四行(Mem),但此处反映着交换分区(Swap)的使用情况。通常,交换分区(Swap)被频繁使用的情况,将被视作物理内存不足而造成的。
第二部分 — 中间部分的内部命令提示栏:
top 运行中可以通过 top 的内部命令对进程的显示方式进行控制。内部命令如下表:
s – 改变画面更新频率
l – 关闭或开启第一部分第一行 top 信息的表示
t – 关闭或开启第一部分第二行 Tasks 和第三行 Cpus 信息的表示
m – 关闭或开启第一部分第四行 Mem 和 第五行 Swap 信息的表示
N – 以 PID 的大小的顺序排列表示进程列表
P – 以 CPU 占用率大小的顺序排列进程列表
M – 以内存占用率大小的顺序排列进程列表
h – 显示帮助
n – 设置在进程列表所显示进程的数量
q – 退出 top
s – 改变画面更新周期
第三部分 — 最下部分的进程列表栏:
以 PID 区分的进程列表将根据所设定的画面更新时间定期的更新。通过 top 内部命令可以控制此处的显示方式。
一般的,我们通过远程监控的方式对服务器进行维护,让服务器本地的终端实时的运行 top ,是在服务器本地监视服务器状态的快捷便利之一。
ubuntu进程管理方法
ps 显示当前进程
ps -l 显示详细信息
ps -u 以用户的格式显示
相关字段说明
F 进程状态标志
S 进程状态代码
UID 进程执行者ID
PPID 父进程标识(parent process ID)
PRI 进程执行的优先级(priority)
NI 进程执行优先级的nice值,负值表示其优先级较高
SZ 进程占用的内存大小
WCHAN 进程或系统调用等待时的地址
%CPU cpu使用百分比
%MEM 内存使用百分比
VSZ 占用虚拟内存大小
RSS 占用物理内存大小
START 进程开始时间
kill 删除进程
kill pid 删除指定pid的进程
kill -l 查看所有可供传送的信号
kill -9 pid 强制删除进程,传送的是SIGKILL信号
kill -15 pid 强制删除进程,传送的是SIGTERM信号
kill -HUP pid 重启Deamon进程
free 查看内存使用状态
free -s 10 每10秒检查内存使用情况
nice 设置执行优先级,-20~19,19最低
sudo nice –2 vi 将vi的优先级调为-2
renice 修改执行优先级,-20~19,19最低
top 动态显示进程
按”P”键 按CPU使用时间排序
按”M”键 按内存使用多少排序
按”T”键 按执行时间多少排序
按”u”键 监视特定用户
按”K”键 删除进程
top -d 10 指定更新时间
lsof -p 查看进程打开的文件
jobs 命令查看后台作业
ubuntu结束进程方法
1、打开终端
2、敲 ps -ef 查出进程的编号(就是PID那列)
3、敲 kill PID (如果PID是123456,则kill 123456)
4、OK了
在本地Ubuntu Linux系统运行大软件的时候,或者服务器长时间运行后,由于有些设计有缺陷的软件,容易出现假死的情况!
那程序假死了以后,我们该怎么办呢?其实这个 问题其实说简单也简单,直接结束进程不就OK了嘛!就像我们在Windows下面做的一样!下面来介绍几种Ubuntu Linux下面结束进程的几种方法!
最安全杀死进程的方法
杀死进程最安全的方法是单纯使用kill命令,不加修饰符,不带标志。
首先使用ps -ef命令确定要杀死进程的PID,然后输入以下命令:
#kill -pid
注释:标准的kill命令通常都能达到目的。终止有问题的进程,并把进程的资源释放给系统。然而,如果进程启动了子进程,只杀死父进程,子进程仍在运行,因此仍消耗资源。为了防止这些所谓的“僵尸进程”,应确保在杀死父进程之前,先杀死其所有的子进程。
还可以使用如下命令来确定要杀死进程的PID或PPID
# ps -ef | grep httpd
以最优雅的方式来结束进程
# kill -l PID
-l选项告诉kill命令用好像启动进程的用户已注销的方式结束进程。当使用该选项时,kill命令也试图杀死所留下的子进程。但这个命令也不是总能成功--或许仍然需要先手工杀死子进程,然后再杀死父进程。
TERM信号
给父进程发送一个TERM信号,试图杀死它和它的子进程。
# kill -TERM PPID
killall命令
killall命令杀死同一进程组内的所有进程。其允许指定要终止的进程的名称,而非PID。
# killall httpd
停止和重启进程
有时候只想简单的停止和重启进程。如下:
# kill -HUP PID
该命令让Linux和缓的执行进程关闭,然后立即重启。在配置应用程序的时候,这个命令很方便,在对配置文件修改后需要重启进程时就可以执行此命令。
绝杀 kill -9 PID
同意的 kill -s SIGKILL
这个强大和危险的命令迫使进程在运行时突然终止,进程在结束后不能自我清理。危害是导致系统资源无法正常释放,一般不推荐使用,除非其他办法都无效。
当使用此命令时,一定要通过ps -ef确认没有剩下任何僵尸进程。只能通过终止父进程来消除僵尸进程。如果僵尸进程被init收养,问题就比较严重了。杀死init进程意味着关闭系统。
如果系统中有僵尸进程,并且其父进程是init,而且僵尸进程占用了大量的系统资源,那么就需要在某个时候重启机器以清除进程表了