0%
常用命令
进程管理
ps
- 查看进程信息
ps -aux
/ps -ef
:查看所有进程
-p [pid]
: 查看指定PID的进程top
/htop
- 动态地展示Linux进程运行情况。包括PID、用户、内存占用率、CPU占用率、启动命令等信息。
pstree
虚拟内存管理
vmstat
- 查看虚拟内存状态
进程状态procs
- r:运行队列中的内核线程数目
- b:等待队列中的内核线程数目
内存状态memory
- swpd: 虚拟内存大小(k)
- free: 空闲内存大小(k)
- buff: 已经使用的buff大小(读写缓冲区)
- cache: 已经使用的cache大小
- inact: 非活跃内存大小,可以回收的内存
- active: 活跃内存大小
交换空间状态swap
- si: 每秒从交换区写入内存的大小
- so: 每秒从内存写到交换区的大小
IO
- bi:每秒读取的块数(包括磁盘在内的所有块设备)
- bo:每秒写入的块数(包括磁盘在内的块数量)
系统调用情况system
- in: 每秒中断数,包括时钟中断
- cs:每秒上下文切换数:系统调用和进程/线程切换需要进行上下文切换。值太大时要考虑减少进程或线程的数目
CPU(单位百分比)
- us:用户进程消耗CPU时间
- sy:系统进程消耗CPU时间
- id:空闲时间
- wa:等待IO时间
网络相关
lsof
- List Open Files, 展示打开的文件。文件可以是一个普通文件,一个目录,一个库,一个网络文件(例如socket)
-i [地址]
:列出所有文件,IP地址和指定参数匹配。如果不指定参数,则选出所有的网络文件。
[4/6][protocol][@hostname|hostaddr][:service|port]
:可以指定过滤参数。[4/6]
指IP版本
-p [pid]
: 查看指定进程已经打开的文件
-c [command]
: 选出指定命令正在使用的文件
netstat
- 显示网络连接、路由表、接口信息、多播成员等。
-t
: 只显示TCP连接
-u
:只显示UDP连接
-l
:只展示listening的socket
-a
:展示listening和non-listening的socket
-n
:显示数字地址(numerical address)
-p
:显示socket所属的PID和进程的名称