top命令是Linux下经常使用的性能分析工具,可以实时显示系统中各个进程的资源占用状况。shell
输入top命令后,以下所示:缓存
top命令显示的前5行是统计信息,第一行是基本信息。服务器
信息栏 | 含义 |
11:25:21 up 19:29 | 当前时间和系统运行时间,格式为时:分。这里表示已经运行了19小时29分 |
2 users | 当前登陆用户数 |
load average:0.00,0.00,0.00 | 系统负载。三个数值分别为1分钟、5分钟、15分钟前到如今的平均值 |
第二行是任务的信息。网络
信息栏 | 含义 |
total | 进程总数 |
running | 正在运行的进程数 |
sleeping | 睡眠的进程数 |
stopped | 中止的进程数 |
zmobie | 僵尸进程数 |
第三行是CPU利用率的统计信息。ssh
信息栏 | 含义 |
us | User Time,CPU执行用户进程百分比,包括Nice Time |
sy | System Time,CPU在内核运行百分比,包括IRQ百分比 |
ni | Nice Time,调整进程优先级所用百分比 |
id | Idle Time,系统空闲百分比 |
wa | Waiting Time,CPU等待I/O完成所用百分比 |
hi | Hard IRQ Time,硬中断占用的CPU时间百分比 |
si | Soft IRQ Time,软中断占用的CPU时间百分比 |
st | Steal Time,虚拟服务占用的CPU时间百分比 |
第四行是内存的使用信息。工具
信息栏 | 含义 |
total | 总物理内存 |
used | 已使用的物理内存 |
free | 空闲的物理内存 |
buffers | 缓冲的总量。存放准备写入磁盘的数据 |
cached | 缓存的总量。存放从磁盘中读取出来的数据 |
第五行是交换区的使用信息。性能
信息栏 | 含义 |
total | 交换区的总大小 |
used | 已使用交换区的总大小 |
free | 未使用交换区的总大小 |
什么是交换区(Swap)?阿里云
Linux的交换区是硬盘上的一块空间。在内存不足的状况下,操做系统先把内存中暂时不用的数据存到硬盘的交换区,腾出内存来让别的程序运行。spa
阿里云服务器上的Linux系统默认是没有设置Swap。因为开启Swap分区会致使硬盘I/O性能降低,所以初始状态未配置Swap,若是某些应用须要开启Swap分区,也可经过相应的命令开启。操作系统
top命令显示的第6行开始是进程统计信息区。
信息栏 | 含义 |
PID | 进程id |
USER | 进程全部者的用户名 |
PR | 优先级 |
NI | nice值。负值表示高优先级,正值表示低优先级 |
VIRI | 进程使用的虚拟内存总量,单位KB |
RES | 进程使用的、未被换出的物理内存大小,单位KB |
SHR | 共享内存大小,单位KB |
S | 进程状态(D=不可中断的睡眠状态,R=运行,S=睡眠,T=跟踪/中止,Z=僵尸进程) |
%CPU | 上次更新到如今的CPU时间占用百分比 |
%MEM | 进程使用的物理内存百分比 |
TIME+ | 进程使用的CPU时间总计,单位1/100秒 |
COMMAND | 命令名/命令行 |
ps命令是显示当前系统中进程的状态,这个命令显示的只是运行ps命令瞬间的状态,若是须要显示不断更新的状态,可使用“top -p 进程id”命令。
ps命令的经常使用参数以下。
# 显示全部的进程 ps -aux # 只显示某个进程 ps axu|grep 进程名
经过ps,管道命令“|”和grep就能把输出中匹配进程名的行检索出来。
查看服务器的网络链接状况,好比
netstat命令的经常使用参数以下。
# 查看系统中启动的端口 netstat -lntup # 查看系统中是否开启80端口 netstat -lntup|grep 80 # 查看系统中80端口的链接状况 netstat -ant|grep 80
lsof(list open files)是一个列出当前系统打开文件的工具。经常使用的参数以下。
# 查看进程id打开的文件 lsof -p 进程id
lrzsz软件包,在Linux里可代替FTP上传和下载。安装lrzsz只要执行命令:
yum -y install lrzsz
往Linux服务器上传文件,只需在目标文件夹下执行以下命令,而后ssh客户端弹出窗口让用户选择上传的文件。
rz
把Linux服务器的文件下载到本地,可执行以下命令,在ssh客户端弹出文件窗口让用户选择下载文件的保存路径。
sz 目标文件
安装supervisor命令:
yum install supervisor
其配置文件/etc/supervisord.conf。
为了更好地管理进程监控脚本,把进程监控脚本放在/etc/supervisord/conf.d/下。例如,为监控运行脚本/data/sendmail.sh,建立文件/etc/supervisord/conf.d/mail.conf。