从理论到实践,教你如何使用Linux命令进行系统监控!

来源:千锋教育
发布时间:2023-12-20 10:21:18
分享

千锋教育品牌logo

从理论到实践,教你如何使用Linux命令进行系统监控!

在运维中,系统监控是非常重要的一项任务,可以帮助我们及时发现问题并解决。在Linux系统中,有很多命令可以帮助我们对系统进行监控,下面就让我们来一一了解。

1. top

top命令可以显示系统的整体运行情况,包括CPU、内存、进程等。在top命令界面中,可以看到系统总体的负载情况以及各个进程的资源占用情况。

下面是top命令的输出示例:

top - 18:51:14 up  1:25,  1 user,  load average: 2.37, 1.80, 1.50Tasks: 240 total,   1 running, 239 sleeping,   0 stopped,   0 zombie%Cpu(s):  5.2 us,  1.7 sy,  0.0 ni, 92.9 id,  0.0 wa,  0.0 hi,  0.2 si,  0.0 stKiB Mem : 16385412 total,  6899516 free,  5371332 used,  4112564 buff/cacheKiB Swap:  1048572 total,  1048572 free,        0 used. 10520464 avail Mem   PID USER      PR  NI    VIRT    RES    SHR S %CPU %MEM     TIME+ COMMAND  907 mysql     20   0 3597752 302316  12292 S 21.9  1.8  22:31.55 mysqld 2679 root      20   0  765368  60468  36896 S  1.6  0.4   0:02.30 snapd  569 root      20   0       0      0      0 I  1.3  0.0   0:05.66 kworker/15:2-events 1685 root      20   0  459924  18596  15516 S  0.6  0.1   0:08.90 systemd-journal  665 root      20   0  395156  27972  20548 S  0.6  0.2   0:02.49 NetworkManager  577 root     -51   0       0      0      0 S  0.3  0.0   0:02.92 irq/130-nvidia  774 root      20   0   52516   6136   4920 S  0.3  0.0   0:05.77 upowerd  794 root      20   0  609164  23780  19224 S  0.3  0.1   0:05.80 packagekitd  892 root      20   0  316224  10552   8368 S  0.3  0.1   0:02.64 systemd-logind

2. vmstat

vmstat命令可以实时地监控CPU、内存、磁盘等系统资源的使用情况,可以用来发现系统性能问题。

下面是vmstat命令的输出示例:

procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu----- r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st 3  0  20664 343188  23916 2365104    0    0     0     0  674 1080  9  2 89  0  0

其中,r表示运行队列中的进程数,b表示处于不可中断状态的进程数,swpd表示交换空间的使用情况,free表示空闲内存的大小,si和so表示交换空间的输入输出情况,bi和bo表示块设备的输入输出情况,us、sy、id、wa、st表示CPU占用率。

3. sar

sar命令可以记录系统的性能数据,并生成报告,可以用来查看系统的历史性能状况。可以使用下面的命令安装sar:

sudo apt-get install sysstat

安装完成后,可以使用下面的命令来查看系统的CPU使用情况:

sar -u

下面是sar命令的输出示例:

Linux 5.4.0-73-generic (ubuntu)  06/04/2021  _x86_64_    (1 CPU)12:00:01 AM     CPU     %user     %nice   %system   %iowait    %steal     %idle12:10:01 AM     all      0.44      0.00      0.12      0.03      0.00     99.4112:20:01 AM     all      0.11      0.02      0.08      0.02      0.00     99.7712:30:01 AM     all      0.47      0.00      0.12      0.03      0.00     99.3812:40:01 AM     all      0.18      0.00      0.09      0.02      0.00     99.7112:50:01 AM     all      0.49      0.00      0.13      0.03      0.00     99.3601:00:01 AM     all      0.09      0.00      0.06      0.02      0.00     99.8301:10:01 AM     all      0.35      0.00      0.10      0.02      0.00     99.52

4. iostat

iostat命令可以监控磁盘活动情况,包括磁盘的读写速度、I/O请求等。

下面是iostat命令的输出示例:

Linux 5.4.0-73-generic (ubuntu)  06/04/2021  _x86_64_    (1 CPU)avg-cpu:  %user   %nice %system %iowait  %steal   %idle           0.77    0.00    0.22    0.05    0.00   99.97Device             tps    kB_read/s    kB_wrtn/s    kB_read    kB_wrtnloop0              0.27         7.21         0.00     208800          0sda                5.16        92.60       200.33    2682194    5800849

其中,tps表示每秒的I/O请求数,kB_read/s表示每秒读取的数据量,kB_wrtn/s表示每秒写入的数据量,kB_read表示总读取数据量,kB_wrtn表示总写入数据量。

5. ps

ps命令可以列出系统中当前的进程,可以用来查看进程的状态、占用的资源等信息。

下面是ps命令的输出示例:

  PID TTY          TIME CMD  904 ?        00:00:00 systemd  913 ?        00:00:00 (sd-pam)  930 ?        00:00:00 systemd-journal  941 ?        00:00:00 rngd  942 ?        00:00:00 systemd-udevd  973 ?        00:00:00 systemd-journald  980 ?        00:00:00 systemd-logind 1002 ?        00:00:00 cron 1003 ?        00:00:00 atd 1017 tty1     00:00:00 login 1018 tty1     00:00:00 -bash 1051 tty1     00:00:00 ps

通过以上五个命令,我们可以实时监控系统的性能状况,并发现问题。这些命令也可以用来作为监控系统的基础,配合相关监控工具来实现自动化监控和告警。

声明:本站部分稿件版权来源于网络,如有侵犯版权,请及时联系我们。

相关推荐

  • 黑客攻击大揭秘:XSS、SQL注入和CSRF攻击分析 黑客攻击大揭秘:XSS、SQL注入和CSRF攻击分析随着互联网的快速发展,网络安全问题也变得日益突出。其中最常见的安全问题就是黑客攻击。黑客攻击可以分为很多种,例如XSS攻击、SQL注入攻击和CSRF
  • 深度剖析:HTTPS、SSL/TLS、SSH加密技术 深度剖析:HTTPS、SSL/TLS、SSH加密技术随着网络技术的迅速发展,安全问题也逐渐成为了互联网领域中的一个重要议题。对于网站管理员而言,使用一种安全可靠的加密技术来保护网站数据的安全性显得尤为
  • 云计算安全严防漏洞,如何保护云端的数据、网络和应用? 云计算安全严防漏洞,如何保护云端的数据、网络和应用?随着云计算的发展,越来越多的企业将数据、网络和应用迁移到云端,以降低成本、提高灵活性和响应速度。然而,云计算也带来了一系列安全威胁,包括数据泄露、网
  • 快速入门Go语言学习Go语言基础知识,开发一个实际项目 在当今互联网行业中,Go语言已经成为了越来越多公司和开发者的首选语言。它不仅拥有高性能的特点,还支持并发处理和清晰简洁的语法,使得开发人员在开发高性能、高并发、易维护的应用程序时变得更加容易和高效。那
  • Goland中的微服务开发实践构建高效的微服务应用程序 Goland中的微服务开发实践:构建高效的微服务应用程序微服务架构是一种流行的架构风格,允许我们将应用程序拆分成小的、自治的服务,这些服务可以独立部署、升级和缩放。这种架构风格被广泛应用于云原生应用程
  • Goland内部实现原理深入理解goland的工作原理 Goland内部实现原理:深入理解goland的工作原理Goland是一款由JetBrains公司开发的Go语言集成开发环境,它基于IntelliJ IDEA平台进行开发,集成了Go语言的编译、调试、