Linux系统管理初步(二)iostat(iptop)、free、ps、netstat命令与网络抓包

简介:

10.6 监控io性能
10.7 free命令
10.8 ps命令
10.9 查看网络状态
10.10 linux下抓包

一、iostat与iotop命令

iostat命令与iotop,命令能够看出系统磁盘的工作情况,及时发现磁盘问题,这两个工具不是系统自带的,分别需要yum安装
其中iostat命令与前一篇博客中提到的sar命令在同一个(sysstat)包里,如果能使用sar命令就能使用iostat命令。
安装命令

yum install epel 先安装epel扩展源
yum install sysstat iotop

(一)iostat命令,看util 如果数值过高,说明磁盘很忙或者出现问题。
Linux系统管理初步(二)iostat(iptop)、free、ps、netstat命令与网络抓包
查看磁盘的使用情况

iostat -x

Linux系统管理初步(二)iostat(iptop)、free、ps、netstat命令与网络抓包
注意标红处数值,系统中的解释如下,反正这个数值很高系统就反应很慢了,要么换硬盘,要么查出是什么导致磁盘使用量飙升。
%util Percentage of elapsed time during which I/O requests were issued to the device (bandwidth utilization for the device). Device saturation occurs when this value is close to 100%.

(二)iotop,产看下哪一个进程占用进程较多
Linux系统管理初步(二)iostat(iptop)、free、ps、netstat命令与网络抓包

在具体服务器上看的更明显,磁盘读写最多的在第一排。

二、free命令

free命令用于查看内存的使用量。一般用free -h命令,看得要舒服点^^
Linux系统管理初步(二)iostat(iptop)、free、ps、netstat命令与网络抓包

其中

total=used+free+shared + buff/cache
available=free+shared + buff/cache
total=used+available
cache指的是磁盘到cpu途中经过的内存区
buff指的是cpu到磁盘间途中经过的内存区

三、ps命令

ps命令用于查看当前的系统进程,ps和top显示的结果很像
两种常用查看方式

1、ps aux
2、ps -elf

建议用ps aux
Linux系统管理初步(二)iostat(iptop)、free、ps、netstat命令与网络抓包

第一行各个项目的含义:
USER:用户名
PID:进程的PID号,常用与kill命令强制关闭进程,默认是从小到大排列
%CPU:CPU占用率
%MEM:内存占用率
VSZ:进程所使用的虚存的大小(Virtual Size)
RSS:物理内存使用,和top命令res一样
TTY:终端号,自己的终端用tty命令可以看到
STAT:进程状态,该项内容较重要
D:保护进程,不能中断的进程
R:run ,在运行的进程
S:大写的S表示sleep状态的进程,vmstat运行时是sleep状态
T:暂停的进程
<:高优先级的进程
N:低优先级的进程
L:内存中内存分页锁定的进程
s:小写的s,主进程
l:小写的L,多线程进程
+:前台进程
START:进程开始时间
TIME:进程运行的时间
COMMAND:进程名

(一)应用举例

1、查看某一个程序或者服务是否在运行

ps aux | grep sshd 这里的sshd可以是任意程序,比如我们经常使用的ngix、mysql等等。

Linux系统管理初步(二)iostat(iptop)、free、ps、netstat命令与网络抓包

2、根据pid强制关闭某一进程

kill (pid号) 比如kill 1571

pid号通过 ps aux |grep '程序名'方式查看

先运行一个命令并放到后台
Linux系统管理初步(二)iostat(iptop)、free、ps、netstat命令与网络抓包
现在我们根据他的pid1571把他强制关闭
Linux系统管理初步(二)iostat(iptop)、free、ps、netstat命令与网络抓包
这时我们在看下ps aux 看下进程表就不存在这个进程了。
Linux系统管理初步(二)iostat(iptop)、free、ps、netstat命令与网络抓包

出现僵尸进程的场景,启用nigix,当父进程被意外杀掉时,子进程就可能进入僵尸进程

3、通过进程号查看进程的路径

ls -l /proc/(pid号)

Linux系统管理初步(二)iostat(iptop)、free、ps、netstat命令与网络抓包
通过这条命令可以看出进程是哪个程序创建的。

四、netstat命令

netstat用于查看网络状态,linux服务器运行各种服务后需要开放一些特定的端口让其他ip的设备去访问来提供相应的服务,比如说xhsell访问服务器就要用到22端口。windows下也有netstat命令 ,也有查看开放端口的功能。

windows下的netstat命令
Linux系统管理初步(二)iostat(iptop)、free、ps、netstat命令与网络抓包

tcp三次握手、四次挥手的内容参见:www.doc88.com/p-9913773324388.html

netstat命令应用示例

1、netstat -lnp查看监听端口,需要
Linux系统管理初步(二)iostat(iptop)、free、ps、netstat命令与网络抓包
如果只需要查看tcp的

netstat -lntp
Linux系统管理初步(二)iostat(iptop)、free、ps、netstat命令与网络抓包

2、如果只需要查看tcp与udp的

netstat -ltnup

Linux系统管理初步(二)iostat(iptop)、free、ps、netstat命令与网络抓包

3、netstat -an查看系统所有的网络连接状况
Linux系统管理初步(二)iostat(iptop)、free、ps、netstat命令与网络抓包

4、ss -an查看网络连接状况

Linux系统管理初步(二)iostat(iptop)、free、ps、netstat命令与网络抓包

这个命令也能看链接情况,但是没有显示连接的进程,而netstat 命令就可以看到

5、通过netstat命令和awk命令查看网络链接各种状态的总数。

netstat -an|awk '/^txp/ {++stat[$NF]} END {for(key in sta) print key,"\t",sta [key]}'

Linux系统管理初步(二)iostat(iptop)、free、ps、netstat命令与网络抓包
命令有点长,需要记住,最好能理解。

五、抓包工具

网络出现异常的时候会需要抓包,网络出现异常流量时需要抓包看看是出现了什么问题,比如看到攻击,频繁访问一些端口的一些请求时就要注意自己是不是被攻击了。抓取网络流量需要使用tcpdump工具或者wireshark工具。

tcpdump工具

首先要使用yum安装tcpdump工具,包名就是tcpdump

yum install tcpdump

用法示例
抓取某个网卡的包

txpdump -nn -i (网卡名,用nmcli dev show查看)

Linux系统管理初步(二)iostat(iptop)、free、ps、netstat命令与网络抓包

图示这个ens33就是网卡名,注意在centos6中网卡是从ens1开始的,而且网卡名会变,而centos7不会,他是根据硬件信息命令名的。

看看抓包结果

tcpdump -nn -i ens33

Linux系统管理初步(二)iostat(iptop)、free、ps、netstat命令与网络抓包

命令选项中的n就是将源主机显示为ip地址+端口号形式,默认显示的是主机名+服务名。我们主要看包从哪来,到哪去,走的是哪个端口的信息。

一般情况下,大部分的包都应该是tcp的包,如果有很多udp的包时就有可能服务器被DDOS攻击了,这时就要借助专业工具或硬件来防护

2、指定端口和网卡抓包

tcpdump -nn ens33(网卡名) port22(端口号)

Linux系统管理初步(二)iostat(iptop)、free、ps、netstat命令与网络抓包

3、抓取网卡网络通信的10个包并将他导入/tmp/1.cap

tcpdump -i ens33 -c 10 -w /tmp/1.cap

Linux系统管理初步(二)iostat(iptop)、free、ps、netstat命令与网络抓包

这个文件是不可cat的!
查看文件信息:

file /tmp/1.cap

Linux系统管理初步(二)iostat(iptop)、free、ps、netstat命令与网络抓包

读取具体内容

tcpdump -r /tmp/1.cap

Linux系统管理初步(二)iostat(iptop)、free、ps、netstat命令与网络抓包

wireshark工具


 本文转自 whytl 51CTO博客,原文链接:http://blog.51cto.com/11934539/2064408
相关文章
|
2月前
|
Linux 应用服务中间件 Shell
二、Linux文本处理与文件操作核心命令
熟悉了Linux的基本“行走”后,就该拿起真正的“工具”干活了。用grep这个“放大镜”在文件里搜索内容,用find这个“探测器”在系统中寻找文件,再用tar把东西打包带走。最关键的是要学会使用管道符|,它像一条流水线,能把这些命令串联起来,让简单工具组合出强大的功能,比如 ps -ef | grep 'nginx' 就能快速找出nginx进程。
376 1
二、Linux文本处理与文件操作核心命令
|
2月前
|
Linux
linux命令—stat
`stat` 是 Linux 系统中用于查看文件或文件系统详细状态信息的命令。相比 `ls -l`,它提供更全面的信息,包括文件大小、权限、所有者、时间戳(最后访问、修改、状态变更时间)、inode 号、设备信息等。其常用选项包括 `-f` 查看文件系统状态、`-t` 以简洁格式输出、`-L` 跟踪符号链接,以及 `-c` 或 `--format` 自定义输出格式。通过这些选项,用户可以灵活获取所需信息,适用于系统调试、权限检查、磁盘管理等场景。
281 137
|
2月前
|
安全 Ubuntu Unix
一、初识 Linux 与基本命令
玩转Linux命令行,就像探索一座新城市。首先要熟悉它的“地图”,也就是/根目录下/etc(放配置)、/home(住家)这些核心区域。然后掌握几个“生存口令”:用ls看周围,cd去别处,mkdir建新房,cp/mv搬东西,再用cat或tail看文件内容。最后,别忘了随时按Tab键,它能帮你自动补全命令和路径,是提高效率的第一神器。
631 57
|
5月前
|
JSON 自然语言处理 Linux
linux命令—tree
tree是一款强大的Linux命令行工具,用于以树状结构递归展示目录和文件,直观呈现层级关系。支持多种功能,如过滤、排序、权限显示及格式化输出等。安装方法因系统而异常用场景包括:基础用法(显示当前或指定目录结构)、核心参数应用(如层级控制-L、隐藏文件显示-a、完整路径输出-f)以及进阶操作(如磁盘空间分析--du、结合grep过滤内容、生成JSON格式列表-J等)。此外,还可生成网站目录结构图并导出为HTML文件。注意事项:使用Tab键补全路径避免错误;超大目录建议限制遍历层数;脚本中推荐禁用统计信息以优化性能。更多详情可查阅手册mantree。
476 143
linux命令—tree
|
1月前
|
存储 安全 Linux
Linux卡在emergency mode怎么办?xfs_repair 命令轻松解决
Linux虚拟机遇紧急模式?别慌!多因磁盘挂载失败。本文教你通过日志定位问题,用`xfs_repair`等工具修复文件系统,三步快速恢复。掌握查日志、修磁盘、验重启,轻松应对紧急模式,保障系统稳定运行。
328 2
|
2月前
|
缓存 监控 Linux
Linux内存问题排查命令详解
Linux服务器卡顿?可能是内存问题。掌握free、vmstat、sar三大命令,快速排查内存使用情况。free查看实时内存,vmstat诊断系统整体性能瓶颈,sar实现长期监控,三者结合,高效定位并解决内存问题。
207 0
Linux内存问题排查命令详解
|
2月前
|
Unix Linux 程序员
Linux文本搜索工具grep命令使用指南
以上就是对Linux环境下强大工具 `grep` 的基础到进阶功能介绍。它不仅能够执行简单文字查询任务还能够处理复杂文字处理任务,并且支持强大而灵活地正则表达规范来增加查询精度与效率。无论您是程序员、数据分析师还是系统管理员,在日常工作中熟练运用该命令都将极大提升您处理和分析数据效率。
229 16
|
4月前
|
监控 Linux 网络安全
Linux命令大全:从入门到精通
日常使用的linux命令整理
783 13
|
5月前
|
Linux 网络安全 数据安全/隐私保护
使用Linux系统的mount命令挂载远程服务器的文件夹。
如此一来,你就完成了一次从你的Linux发车站到远程服务器文件夹的有趣旅行。在这个技术之旅中,你既探索了新地方,也学到了如何桥接不同系统之间的距离。
857 21
|
5月前
|
监控 Linux
Linux系统中使用df命令详解磁盘使用情况。
`df`命令是Linux系统管理员和用户监控和管理磁盘空间使用的重要工具。掌握它的基本使用方法和选项可以帮助在必要时分析和解决空间相关问题。简洁但功能丰富,`df`命令确保了用户可以快速有效地识别和管理文件系统的空间使用情况。
385 13