ss命令-格式:ss[OPTION]...[FILTER]
netstat经过遍历proc来获取socket信息,ss使用netlink与内核tcp_diag模块通讯获取socket信息。linux
选项:
-t: tcp协议相关
-u: udp协议相关
-w:裸套接字相关
-x:unixsock相关
-l: listen状态的链接
-a:全部
-n:数字格式
-p:相关的程序及PID
-e:扩展的信息
-m:内存用量
-o:计时器信息ios
FILTER: [ state TCP-STATE ] [ EXPRESSION]
TCP的常见状态:tcp finite statemachine:
LISTEN:监听
ESTABLISHED:已创建的链接
FIN_WAIT_1
FIN_WAIT_2
SYN_SENT
SYN_RECV
CLOSEDsql
EXPRESSION:
dport=
sport=
示例:’(dport= :sshorsport= :ssh)’
经常使用组合:-tan, -tanl, -tanlp,-uanapp
示例:
ss-l显示本地打开的全部端口
ss-pl显示每一个进程具体打开的socket
ss-t -a显示全部tcpsocket
ss-u -a显示全部的UDPSocekt
ss-o stateestablished'( dport= :sshorsport = :ssh)'显示全部已创建的ssh链接
ss-o stateestablished'( dport = :httporsport = :http )'显示全部已创建的HTTP链接
ss-s列出当前socket详细信息运维
uptime:显示当前时间,系统已启动的时间、当前上线人数,系统平均负载(一、五、1 5分钟的平均负载,通常不会超过1)ssh
系统平均负载:指在特定时间间隔内运行队列中的平均进程数socket
一般每一个CPU内核的当前活动进程数不大于3,那么系统的性能良好。若是每一个CPU内核的任务数大于5,那么此主机的性能有严重问题tcp
若是linux主机是1个双核CPU,当LoadAverage为6的时候说明机器已经被充分使用工具
top:有许多内置命令
排序:
P:以占据的CPU百分比,%CPU
M:占据内存百分比,%
MEMT:累积占据CPU时长,
TIME+
首部信息显示:
uptime信息:l命令
tasks及cpu信息:t命令
cpu分别显示:1(数字)
memory信息:m命令
退出命令:q
修改刷新时间间隔:s
终止指定进程:k
保存文件:W
栏位信息简介
us:用户空间
sy:内核空间
ni:调整nice时间
id:空闲
wa:等待IO时间
hi:硬中断
si:软中断(模式切换)
st:虚拟机偷走的时间
选项:
-d 3 指定刷新时间间隔,默认为3秒
-b 所有显示全部进程
-n 3 刷新多少次后退出(此为3)
-H线程模式,示例:top-H -p pidofmysqld
htop命令:EPEL源
选项:
-d 3: 指定延迟时间;
-u UserName:仅显示指定用户的进程
-s COLUME:以指定字段进行排序
子命令:
s:跟踪选定进程的系统调用
l:显示选定进程打开的文件列表
a:将选定的进程绑定至某指 定CPU核心
t:显示进程树
dstat命令:系统资源统计,代替vmstat,iostat