监视系统活动和查看进程
Linux是多任务多用户的操作系统
Linux可以管理多个同时运行的程序,是多任务系统
Linux也是一个多用户的系统
多个用户可以同时在不同地方通过网络连接到同一个Linux系统;
多用户多任务的隐患:
让系统过载,任务太繁重了;
如何停止未响应的程序;
=================================================
w命令
快速了解当前系统中有哪些用户登录着;
日期; up表示运行中; 1:24表示 运行了1小时24分; 2 users 表示有两个用户;
load average: 0.00,0.01,0.05 负载,系统活动的指标;分别表示1分钟内平均负载、5分钟内平均负载、15分钟内平均负载;单位是进程数;
uptime命令 用于显示上图的第一行
tload 命令 绘制负载曲线图
USER 用户名
TTY 终端名称 :0表示本地 pts伪终端,不是全屏的终端;tty2 tty3真全屏终端;
FROM 用户连接的IP地址,如果是本地就是:0
LOGIN@ 用户登录的时间
IDLE 空闲意思,用户多久没有活跃了
JCPU 该终端所有相关的进程使用的CPU(处理器)时间
PCPU CPU处理器处理当前进程所耗时间
WHAT 当前运行的程序
(:0)表示FROM
==================================================================
ps命令 和top命令 :列出运行的进程
简单来说,进程就是加载到内存中运行的程序;
大多数程序运行时都只在内存中启动一个进程;
有的程序运行时会创建不少进程;每开一个标签栏都会创建一个新的进程;
网络服务器上一般使用Apache这个服务器,在运行时会创建很多进程,分别负责不同的任务;
Google浏览器每开一个页面,就打开一个进程;
ps 是 Process Status缩写
用于显示当前系统中的进程
ps进程的静态列表,相当于快照;
PID 进程编号
TTY 终端
TIME 进程运行耗时
CMD 产生这个进程的程序名,如果好多行的CMD都是一样的命令,说明同一个命令产生了不同的进程;
ps -ef 列出所有进程
PPID 进程的父进程
C
STIME 开始时间
还可以这样输入 ps -ef | less //显示更规整
ps -efH //以乔木状列出所有进程,带有缩进
ps -u 用户名 : 列出此用户运行的进程
ps -u xxx #用实际用户替换xxx
ps -aux : 通过CPU和内存使用来过滤进程
ps -aux|less
VSZ
RSS
STAT 状态
还可以排序 :根据CPU使用率来降序排列 ps -aux --sort -pcpu | less
ps -aux --sort -pcpu,+pmem|head
pstree命令:以树形结构显示进程
ps -axjf 和pstree效果类似
以树形结构显示进程
=================================================
top: 进程的动态列表
ps命令的缺陷是:静态的;
只能记录当下那一刻的进程列表;
top命令有一个随实际变化的交互列表;
top命令无法显示全部的进程,只显示排在前面的进程;
为了整个信息区域能占据终端中一个页面的大小;
最消耗处理器的进程是排在前列的;
q : 退出top
h:显示帮助文档
B:加粗某些信息
f/F:添加或删除某些列
u:依照用户来过滤显示
k:结束某个进程
s:改变刷新页面的时间
ctrl+c 停止终端中正在运行的进程,这种只在终端中执行
终端中拷贝粘贴:ctrl+shift+C,ctrl+shift+V
===================================================
其他命令
kill 进程号 : 杀死进程
killall 程序名:杀死所有进程,注意是后接程序名
halt:关闭系统,需要root身份
reboot:重启系统
shutdown: 用法比较多样
poweroff:普通身份也可以运行
还有一些优秀的监控软件
glances软件
htop软件