iostat 直接查看 iostat 1
iostat -x 磁盘使用html
%util:表示I/O等待,占用CPU的等待时间,这个数字大,可能硬盘有故障
iotop 磁盘使用
yum - y install iotoplinux
动态显示 由高到低ios
Total DISK READ : 0.00 B/s | Total DISK WRITE : 0.00 B/s Actual DISK READ: 0.00 B/s | Actual DISK WRITE: 0.00 B/s
free 查看内存使用状况缓存
free -h 人性化显示
内存会预分配一部分给buffer / cache 缓冲/缓存网络
buffer 缓冲:加速了数据的 写入 从CPU到内存buffer再到磁盘 cache 缓存:加速了数据的 读取 从磁盘到内存cache再到CPU total = used+free+buff/cache 真· 剩余物理内存
avaliable 包含free 和 buffer/cache 剩余部分多线程
ps 查看系统进程 静态的一次显示出来
ps aux 和 ps -elf 同样
可kill +PID 杀进程
porc 目录下的目录是进程PID的运维
STAT 部分说明 s 主进程 R run 运行状态的进程 时间段使用CPU S sleep状态的进程 T 暂停的进程 Z 僵死的进程 D 不能中断的进程 < 高优先级的进程 N 低优先级进程 L 内存中被锁了内存分页 `+` 前台进程 l 多线程进程
netstat 查看网络状态socket
netstat -lnp 查看监听端口 LISTEN 监听 netstat -an 查看系统的网络链接情况TCPID netstat -lntp 只看tcp协议。不包含socket netstat -lnutp 只看tcp udp协议 TIME-WAIL 等待下次链接状态
小技巧tcp
netstat -an | awk '/^tcp/{++sta[$NF]} END {for(key in sta) print key,"\t",sta[key]}' [root@huidou01 ~]$ netstat -an | awk '/^tcp/{++sta[$NF]} END {for(key in sta) print key,"\t",sta[key]}' LISTEN 4 ESTABLISHED 1 #抓监听数 #ss -an 和nestat 同样,可是不会显示进程名字
应用层、传输层、网际互联层、网路接口层
传输层ide
传输层对应于OSI参考模型的传输层,为应用层实体提供端到端的通讯功能,保证了数据包的顺序传送以及数据完整性
该层定义了两个主要的协议:传输控制协议(TCP)和用户数据报文协议(UDP)
TCP :可靠的,面向链接协议(网络、邮件) UDP:不可靠的,面向无链接的协议
TCP/IP 三次握手
主机A 主机B 1 . 发送SYN信息 (序号=X) 1->2 (1次) 2 .接受SYN信息(序列号=X)发送SYN、ACK信息 2<-3 (2次) 3 . 接受SYN、ACK信息 发送ACK信息(确认号=y+1) 3->3 (3次) 4 . 接受ACK信息(确认号=y+1) TCP/IP 四次握手结束
tcpdump 系统抓包工具
tcpdump -nn 第一个n 用IP显示,第二个n 端口号 tcpdump -i 指定网卡名字 tcpdump port 22 指定端口 not port tcpdump -c 100 指定抓包100个 -w 指定放入文件目录 抓出来的包不能直接cat 要用 -r 读 tcpdump -r 读抓包的文件信息 #扩展tcp三次握手四次挥手 http://www.doc88.com/p-9913773324388.html
tshark 相似tcpdump
yum install -y wireshark
tshark -n -t a-R http.request -T fields -e "frame.time" -e "ip.src" -e "http.host" -e "http.request.method" -e "http.request.uri" #相似与WEB访问日志 #tshark几个用法: http://www.aminglinux.com/bbs/thread-995-1-1.html
扩展:
tcp三次握手四次挥手 http://www.doc88.com/p-9913773324388.html
tshark几个用法:http://www.aminglinux.com/bbs/thread-995-1-1.html