1,查看进程
①:ps 将某个时间点的进程运行情况截取下来
ps aux 查看系统所有的进程
ps -lA 也是能够查看系统所有的进程
ps axjf 联通部分进程数状态
选项与参数:
-A 所有的进程均显示出来,与-e具有同样的效果
-a 不显示与终端有关的所有进程
-u 有效使用者相关的进程
x 通常与a这个参数一起使用,可以略出比较完整的信息
输出格式规划:
l 较长,较详细的将该PID的信息列出
j 任务的格式
-f 做一个更为完整的输出
②:仅查看自己的bash相关进程 ps -l
F:代表这个进程标识,说明这个进程的权限,常见号码:
4:权限为root
1:此子进程仅执行复制而没有实际执行
S:代表这个进程的状态,主要状态:
R:正在运行
S:正在睡眠,可以被唤醒
D:不可被唤醒的睡眠状态,通常这个进程有可能在等待I/O的情况
T:停止状态,可能是在任务控制(后台暂停)或跟踪状态
Z:僵尸状态,进程已经终止但却无法被删除至内存外
UID/PID/PPID: 代表此进程被该UID所拥有的/进程的PID号码/此进程的父进程PID号码
C:代表CPU的使用率,单位百分比
PRI/NI:Priority/Nice的缩写,代表此进程被cpu所执行的优先级,数值越小越优先
ADDR/SZ/WCHAN:都与内存有关,ADDR是kernel function,指出该进程在内存的那个部分,如果是running的进程,一般就会显示[-],SZ代表此进程用掉多少内存,WCHAN表示目前进程是都运行,同样的,如果是[-]代表运行
TTY:登陆者的终端位置,如果是远程登录则使用动态终端接口名称(pts/n)
TIME:使用CPU的时间,是此进程实际花费CPU运行的时间
CMD:就是command的缩写,表示造成此进程的触发进程是什么
③:查看系统所有进程 ps aux
USER:该进程属于所属用户账号
PID:该进程的进程ID
%CPU:该进程使用掉的cpu资源百分比
%MEM:该进程所占用的物理内存百分比
VSZ:该进程使用掉的虚拟内存(KB)
RSS:该进程占用的固定内存(KB)
TTY:改进程是哪个终端上面运行,如果与终端无关则显示?,tty1-tty6是本机上的登录进程,如果是pts/0等,则是网络连接进入主机的进程
STAT:该进程目前的状态
START:该进程被触发启动时间
TIME:改进程实际使用CPU运行的时间
COMMADN:改进程的实际命令是什么
④:top 动态查看进程的变化
2,查看系统资源信息
①:free 查看内存使用情况
②:uname 查看系统与内核相关信息
uname [-asrmpi]
-a:所有系统相关的信息,包括下面的数据都会被列出来
-s:系统内核名称
-r:内核的版本
-m:本系统的硬件架构,例如i686
-p:CPU的类型,与-m类似,只是显示的是cpu的类型
-i:硬件的平台(x86)
③:uptime 查看系统启动时间与任务负载
④:netstat 追踪网络或socket文件
netstat -[atunlp]
-a:将目前系统上所有的连接,监听,socket信息列出来
-t:列出tcp网络封包的信息
-u:列出udp网络封包的信息
-n:不以进程的服务名称,以端口号来显示
-l:列出目前正在网络监听的服务
-p:列出该网络服务的进程PID
上面的结果显示了两部分,分别是网络的连接以及linux上面的socket进程相关性部分
第一部分:因特网连接情况(第一个图)
PROTO:网络的封包协议,主要分为tcp和udp
Recv-Q:非由用户进程连接到此scoket的复制的总Bytes数
Send-Q:非由远程主机传送过来的acknowledged总Bytes数
Local Address:本地端的IP:Port情况
Foreign Address:远程主机的IP:Port情况
State:连接状态,主要有建立(ESTABLISED)及监听(LISTEN)
第二部分:socket文件输出部分
Proto:一般就是unix
RefCnt:连接到此socket的进程数量
Flags:连接的标识
Type:socket存取的类型,主要有确认连接的STREAM和不需要确认的DGRAW
State:如果是CONNECTED则表示多个进程之间已经建立连接
Path:连接到此socket的相关进程的路径,或是相关数据输出的路径