Linux常用性能诊断命令详解

Linux常用性能诊断命令详解,第1张

top命令动态地监视进程活动与系统负载等信息。

使用示例:

效果如下图:

以上命令输出视图中分为两个区域,一个统计信息区,一个进程信息区。

统计信息区:

第一行信息依次为:系统时间、运行时间、登录终端数、系统负载(三个数值分别为1分钟、5分钟、15分钟内的平均值,数值越小意味着负载越低)。

第二行信息依次为:进程总数、运行中的进程数、睡眠中的进程数、停止的进程数、僵死的进程数。

第三行信息依次为:用户占用资源百分比、系统内核占用资源百分比、改变过优先级的进程资源百分比、空闲的资源百分比等。

第四行信息依次为:物理内存总量、内存使用量、内存空闲量、作为内核缓存的内存量。

第五行信息依次为:虚拟内存总量、虚拟内存使用量、虚拟内存空闲量、预加载内存量。

进程信息区:

按 q 键退出监控页面。

uptime 用于查看系统的负载信息。

使用示例:

查看系统的负载信息。

效果如下图:

输出说明:

当前服务器时间:11:06:57

当前服务器运行时长:59 min

当前用户数:1 users

当前负载情况:load average: 0.00, 0.04, 0.08(分别取1min,5min,15min的均值)

free用于显示当前系统中内存的使用量信息。

命令语法: free [-bkmotV][-s <间隔秒数>]

参数说明:

使用示例:

显示当前系统中内存的使用量信息。

效果如下图:

输出说明:

ifconfig命令用于获取网卡配置与网络状态等信息。

使用示例:

获取网卡配置与网络状态等信息。

效果如下图:

输出说明:

第一部分的第一行显示网卡状态信息。

eth0表示第一块网卡。

UP代表网卡开启状态。

RUNNING代表网卡的网线被接上。

MULTICAST表示支持组播。

第二行显示网卡的网络信息。

inet(IP地址):172.16.67.50。

netmask(掩码地址):255.255.0.0。

broadcast(广播地址):172.16.255.255。

RX表示接收数据包的情况,TX表示发送数据包的情况。

lo表示主机的回环网卡,是一种特殊的网络接口,不与任何实际设备连接,而是完全由软件实现。与回环地址(127.0.0.0/8 或 ::1/128)不同,回环网卡对系统显示为一块硬件。任何发送到该网卡上的数据都将立刻被同一网卡接收到。

我们在Linux执行ifconfig指令时会发现显示两个设备的信息,一般来说,一个是网卡eth0,一个就是lo,具体系统可能会有差别。我们知道eth0是以太网卡,而对于lo似乎不太当回事。lo其实是一个系统虚拟的环回接口,它的IP地址是127.0.0.1,利用这个接口可以实现系统内部发送和接收数据,所以一般情况下我们使用下面指令:

root@localhost ~# ping 127.0.0.1

1

1

是可以ping通的,因为这其实就是系统内部建立连接。

(1)网络接口的命名

eth0: ethernet的简写,一般用于以太网接口。 

wifi0:wifi是无线局域网,因此wifi0一般指无线网络接口。

ath0: Atheros的简写,一般指Atheros芯片所包含的无线网络接口。

lo: local的简写,一般指本地环回接口。

(2)网络接口如何工作

网络接口是用来发送和接受数据包的基本设备。

系统中的所有网络接口组成一个链状结构,应用层程序使用时按名称调用。

每个网络接口在linux系统中对应于一个struct net_device结构体,包含name,mac,mask,mtu…信息。

每个硬件网卡(一个MAC)对应一个网络接口,其工作完全由相应的驱动程序控制。

(3)虚拟网络接口

虚拟网络接口的应用范围非常广泛。最着名的当属“lo”了,基本上每个linux系统都有这个接口。

虚拟网络接口并不真实地从外界接收和发送数据包,而是在系统内部接收和发送数据包,因此虚拟网络接口不需要驱动程序。

虚拟网络接口和真实存在的网络接口在使用上是一致的。

(4)网络接口的创建

硬件网卡的网络接口由驱动程序创建。而虚拟的网络接口由系统创建或通过应用层程序创建。

驱动中创建网络接口的函数是:register_netdev(struct net_device *)或者register_netdevice(struct net_device *)。

这两个函数的区别是:register_netdev(…)会自动生成以”eth”作为打头名称的接口,而register_netdevice(…)需要提前指定接口名称.事实上,register_netdev(…)也是通过调用register_netdevice(…)实现的。

(5)lo接口的作用

假如包是由一个本地进程为另一个本地进程产生的, 它们将通过外出链的’lo’接口,然后返回进入链的’lo’接口.具体参考包过滤器的相关内容。

实验:

本地一个进程发起连接,到一个本地的daemon监听的内网IP地址(eth1: 10.1.1.1)的端口(8085),此时在eth1上是抓不到包的,在 lo 上抓到,说明使用的是本地回环接口lo,而网络层的IP地址则是内网IP地址.

1.首先咱们查看一下,当前系统的网卡参数。可以看到除了一个回环网卡“lo”和虚拟网卡“virbr0”之外,就只有一块网卡“ens33”。 2.现在咱们给它添加一块网卡,然后查看一下网卡的参数,可以看到已经多了一块网卡“ens36” 3.但我们去配置文件目录“/etc/sysconfig...”


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/7266030.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-03
下一篇2023-04-03

发表评论

登录后才能评论

评论列表(0条)

    保存