百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术教程 > 正文

Linux 中常用的系统检测命令

csdh11 2025-01-15 12:07 19 浏览

在平时工作中会遇到各种各样的系统问题,作为一个合格的开发或运维人员,需要具备一定的快速查看系统运行状态的能力。


本文分享一下常见且超实用的查看系统状态的检测命令。


ifconfig

ifconfig 命令用于获取网卡配置信息和查看网络状态等信息的命令。

命令格式为 ifconfig [网络设备][参数]


一般使用该命令用于的就是网卡名称、ip配置是否正确、网卡物理地址以及RX、TX的接收数据包与发送数据包的个数及累计流量等信息。


# ifconfig 
eth0 Link encap:Ethernet HWaddr 00:50:56:0A:0B:0C 
inet addr:192.168.0.3 Bcast:192.168.0.255 Mask:255.255.255.0
inet6 addr: fe80::250:56ff:fe0a:b0c/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:172220 errors:0 dropped:0 overruns:0 frame:0
TX packets:132379 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000 
RX bytes:87101880 (83.0 MiB) TX bytes:41576123 (39.6 MiB)
Interrupt:185 Base address:0x2024 


lo Link encap:Local Loopback 
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:2022 errors:0 dropped:0 overruns:0 frame:0
TX packets:2022 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0 
RX bytes:2459063 (2.3 MiB) TX bytes:2459063 (2.3 MiB)


uname

uname (英文全称unix name)命令用于查看系统内核与系统版本等信息。

格式为 uname [-amnrsv][--help][--version]


使用该命令常用命令为 uname -a 来查看当前系统的内核名称、主机名、内核发行版本、节点名、处理器、硬件平台以及操作系统等信息。


# uname -a
Linux localhost.localdomain 4.11.0-14-generic #20~16.04.1-Ubuntu SMP Wed Aug 9 09:06:22 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux

另外若想查看当前系统版本的详细信息,可以通过查看 redhat-release 文件获取。


# cat /etc/redhat-release
Centos Linux release 7.3.1611 (Core) 


uptime

uptime 用于查看系统的负载信息。它显示了当前系统时间、系统已经运行的时间、启用终端数量以及平均负载情况。


# uptime
10:10:42 up 5 days, 19:23, 2 users, load average: 2.16, 2.45, 3.15 
  • 10:10:42 为 系统当前时间
  • up 5 days, 19:23 从上次启动开始系统运行的时间
  • 2 users 实际是连接数量,同一用户多个连接的时候算多个
  • load average: 2.16, 2.45, 3.15 描述了1分钟5分钟15分钟内系统平均负载


free

free 指令会显示内存的使用情况,包括实体内存,虚拟的交换文件内存,共享内存区段,以及系统核心使用的缓冲区等。

格式为 free [-bkmotV][-s <间隔秒数>]


有时候系统会因为资源耗尽导致宕机,因此系统管理员要时刻关注系统内存的使用量。


# free 
total used free shared buff/cached available
Mem: 254772 184568 70204 9244 5692 25045
Swap: 4063228 0 4063228


history

history 命令用于显示历史记录和执行过的命令。

格式为 history [参数]


该命令很常用,比如当系统出现了问题,想要查看该系统没出现问题之前用户都做了哪些操作,这个时候就可以通过该命令查看记录信息。


# history 
1 service network restart
2 exit
3 id
4 cat /etc/redhat-release 
... 


who

who 命令用于查看当前登入主机的用户终端信息,显示的资料包含了使用者 ID、使用的终端机、用户ip、上线时间等等。

命令格式为 who - [husfV] [user]


# who 
root pts/1 2021-10-14 18:51 (192.168.1.157)
root pts/2 2021-10-14 19:48 (192.168.1.23)


  • root 登录的用户名
  • pts/1 为终端设备
  • 2021-10-14 18:51 登录到的系统时间
  • 192.168.1.157 用户ip


last

last 命令用于显示用户最近登录信息 。

格式为 last [参数]


# last
root pts/1 192.168.1.23 Mon Oct 25 18:51 still logged in
root pts/0 192.168.1.23 Mon Oct 25 07:23 still logged in


sosreport

在 linux 中,我们可以使用 sosreport 命令来收集系统配置及架构信息并输出到诊断文档,这样当Linux系统出现故障需要联系技术支持人员时,我们可以使用这个命令来简单收集系统的运行状态和服务配置信息,以便后续技术人员方便定位。


# sosreport
sosreport (version 3.0)
This command will collect diagnostic and configuration information from
this Red Hat Enterprise Linux system and installed applications.
An archive containing the collected information will be generated in
/var/tmp and may be provided to a Red Hat support representative.
Any information provided to Red Hat will be treated in accordance with
the published support policies at:
https://access.redhat.com/support/
The generated archive may contain data considered sensitive and its
content should be reviewed by the originating organization before being
passed to any third party.
No changes will be made to system configuration.
Press ENTER to continue, or CTRL-C to quit. 此处敲击回车来确认收集信息
Please enter your first initial and last name [ywnz.com]:此处敲击回车,来确认主机名称
Please enter the case number that you are generating this report for:此处敲击回车来确认主机编号
Running plugins. Please wait ...
...

相关推荐

探索Java项目中日志系统最佳实践:从入门到精通

探索Java项目中日志系统最佳实践:从入门到精通在现代软件开发中,日志系统如同一位默默无闻却至关重要的管家,它记录了程序运行中的各种事件,为我们排查问题、监控性能和优化系统提供了宝贵的依据。在Java...

用了这么多年的java日志框架,你真的弄懂了吗?

在项目开发过程中,有一个必不可少的环节就是记录日志,相信只要是个程序员都用过,可是咱们自问下,用了这么多年的日志框架,你确定自己真弄懂了日志框架的来龙去脉嘛?下面笔者就详细聊聊java中常用日志框架的...

物理老师教你学Java语言(中篇)(物理专业学编程)

第四章物质的基本结构——类与对象...

一文搞定!Spring Boot3 定时任务操作全攻略

各位互联网大厂的后端开发小伙伴们,在使用SpringBoot3开发项目时,你是否遇到过定时任务实现的难题呢?比如任务调度时间不准确,代码报错却找不到方向,是不是特别头疼?如今,随着互联网业务规模...

你还不懂java的日志系统吗 ?(java的日志类)

一、背景在java的开发中,使用最多也绕不过去的一个话题就是日志,在程序中除了业务代码外,使用最多的就是打印日志。经常听到的这样一句话就是“打个日志调试下”,没错在日常的开发、调试过程中打印日志是常干...

谈谈枚举的新用法--java(java枚举的作用与好处)

问题的由来前段时间改游戏buff功能,干了一件愚蠢的事情,那就是把枚举和运算集合在一起,然后运行一段时间后buff就出现各种问题,我当时懵逼了!事情是这样的,做过游戏的都知道,buff,需要分类型,且...

你还不懂java的日志系统吗(javaw 日志)

一、背景在java的开发中,使用最多也绕不过去的一个话题就是日志,在程序中除了业务代码外,使用最多的就是打印日志。经常听到的这样一句话就是“打个日志调试下”,没错在日常的开发、调试过程中打印日志是常干...

Java 8之后的那些新特性(三):Java System Logger

去年12月份log4j日志框架的一个漏洞,给Java整个行业造成了非常大的影响。这个事情也顺带把log4j这个日志框架推到了争议的最前线。在Java领域,log4j可能相对比较流行。而在log4j之外...

Java开发中的日志管理:让程序“开口说话”

Java开发中的日志管理:让程序“开口说话”日志是程序员的朋友,也是程序的“嘴巴”。它能让程序在运行过程中“开口说话”,告诉我们它的状态、行为以及遇到的问题。在Java开发中,良好的日志管理不仅能帮助...

吊打面试官(十二)--Java语言中ArrayList类一文全掌握

导读...

OS X 效率启动器 Alfred 详解与使用技巧

问:为什么要在Mac上使用效率启动器类应用?答:在非特殊专业用户的环境下,(每天)用户一般可以在系统中进行上百次操作,可以是点击,也可以是拖拽,但这些只是过程,而我们的真正目的是想获得结果,也就是...

Java中 高级的异常处理(java中异常处理的两种方式)

介绍异常处理是软件开发的一个关键方面,尤其是在Java中,这种语言以其稳健性和平台独立性而闻名。正确的异常处理不仅可以防止应用程序崩溃,还有助于调试并向用户提供有意义的反馈。...

【性能调优】全方位教你定位慢SQL,方法介绍下!

1.使用数据库自带工具...

全面了解mysql锁机制(InnoDB)与问题排查

MySQL/InnoDB的加锁,一直是一个常见的话题。例如,数据库如果有高并发请求,如何保证数据完整性?产生死锁问题如何排查并解决?下面是不同锁等级的区别表级锁:开销小,加锁快;不会出现死锁;锁定粒度...

看懂这篇文章,你就懂了数据库死锁产生的场景和解决方法

一、什么是死锁加锁(Locking)是数据库在并发访问时保证数据一致性和完整性的主要机制。任何事务都需要获得相应对象上的锁才能访问数据,读取数据的事务通常只需要获得读锁(共享锁),修改数据的事务需要获...