统计Linux系统资源使用情况

统计Linux系统资源使用情况

统计Linux系统资源使用情况

Linux作为一种开源操作系统,被广泛应用于服务器领域以及嵌入式设备领域。在实际应用中,我们常常需要了解系统资源的使用情况,比如CPU的利用率、内存的占用情况、磁盘的空间利用等。本文将详细介绍如何在Linux系统中进行资源的统计和监控。

CPU的使用情况

top命令

top命令是最简单的查看系统资源使用情况的方法之一,可以实时查看系统的CPU、内存等资源使用情况。

top

运行top命令后,我们可以看到类似如下的输出:

top - 13:02:03 up  1:12,  1 user,  load average: 0.19, 0.35, 0.36
Tasks: 116 total,   1 running, 115 sleeping,   0 stopped,   0 zombie
%Cpu(s): 19.3 us,  3.4 sy,  0.0 ni, 76.8 id,  0.3 wa,  0.0 hi,  0.1 si,  0.0 st
KiB Mem :  2049288 total,  1647444 free,   277516 used,  1243284 buff/cache
KiB Swap:  1048572 total,  1048572 free,        0 used.  1587080 avail Mem

  PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND
 5411 root      20   0   49464   3632   3152 R   6.2  0.2   0:00.01 top
    1 root      20   0  131888   5280   3452 S   0.0  0.3   0:02.63 systemd
    2 root      20   0       0      0      0 S   0.0  0.0   0:00.00 kthreadd
    4 root       0 -20       0      0      0 I   0.0  0.0   0:00.00 kworker/0:0H

其中,%Cpu(s)行显示了CPU的使用情况,us代表用户空间的CPU时间占用比例,sy代表内核空间的CPU时间占用比例,id代表CPU空闲比例。

sar命令

sar(System Activity Reporter)命令也是一个查看系统资源使用情况的工具,可以用来定期采集系统资源数据。

sar -u 1 5

上述命令表示每1秒采集一次CPU使用情况,共采集5次,并输出。

内存的使用情况

free命令

free命令用于查看系统内存的占用情况。

free -m

运行free命令后,我们可以看到类似如下的输出:

              total        used        free      shared  buff/cache   available
Mem:           1885         411         142           6        1331        1338
Swap:           509           0         509

输出中,Mem一行显示了物理内存的总量、已使用、空闲、共享、缓存/缓冲区的使用情况以及可用内存的情况;Swap一行显示了交换区的总量、已使用和空闲情况。

vmstat命令

vmstat命令用于显示虚拟内存的统计信息。可以使用如下命令查看系统的内存使用情况:

vmstat 1 5

磁盘的使用情况

df命令

df命令用于显示文件系统的磁盘使用情况。

df -h

运行df命令后,我们可以看到类似如下的输出:

Filesystem      Size  Used Avail Use% Mounted on
/dev/sda1        20G   10G  7.5G  57% /
devtmpfs        931M     0  931M   0% /dev
tmpfs           943M   16M  927M   2% /dev/shm
tmpfs           943M  643M  300M  69% /run
tmpfs           943M     0  943M   0% /sys/fs/cgroup

输出中,Size表示文件系统总容量,Used表示已使用的容量,Avail表示剩余容量,Use%表示已使用的百分比,Mounted on表示挂载的路径。

iostat命令

iostat命令用来查看系统的输入输出设备的使用情况。

iostat -x 1 5

上述命令表示每1秒采集一次磁盘使用情况,共采集5次,并输出。

网络的使用情况

ifconfig命令

ifconfig命令用于查看网络接口的配置信息。

ifconfig

运行ifconfig命令后,我们可以看到类似如下的输出:

eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.1.100  netmask 255.255.255.0  broadcast 192.168.1.255
        inet6 fe80::250:56ff:fe45:1  prefixlen 64  scopeid 0x20
        ether 00:50:56:45:00:01  txqueuelen 1000  (Ethernet)
        RX packets 1951  bytes 285354 (278.6 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 1415  bytes 256026 (249.9 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

netstat命令

netstat命令用于显示网络连接、路由表和网络接口信息。

netstat -nat

上述命令将输出所有的TCP连接信息。

总结:通过上述的命令,我们可以比较容易地了解Linux系统的资源使用情况,从而及时发现和解决系统性能问题,保证系统的稳定运行。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程